From 799a39b766358d594450ebda34eb61acd88dabf7 Mon Sep 17 00:00:00 2001
From: Image <>
Date: Sat, 27 Jun 2020 23:08:55 -0400
Subject: [PATCH] Fix certain zones not loading (was reading strings in voc
 files wrong)

Fix #70
---
 .../EQ2ModelViewer/libeq2/Util/Eq2Reader.cs         | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/EQ2/devtools/EQ2ModelViewer/EQ2ModelViewer/libeq2/Util/Eq2Reader.cs b/EQ2/devtools/EQ2ModelViewer/EQ2ModelViewer/libeq2/Util/Eq2Reader.cs
index 2a47e06e2..d693d5fc3 100644
--- a/EQ2/devtools/EQ2ModelViewer/EQ2ModelViewer/libeq2/Util/Eq2Reader.cs
+++ b/EQ2/devtools/EQ2ModelViewer/EQ2ModelViewer/libeq2/Util/Eq2Reader.cs
@@ -68,13 +68,10 @@ namespace Everquest2.Util
         public virtual VeBase ReadObject()
         {
             long startPos = BaseStream.Position;
+
             // Read class name
             string className = ReadString();
 
-            if ( this.BaseStream.Position == 5272)
-            {
-                int test = 0;
-            }
             if (className.Length < 1)
                 return null;
 
@@ -324,17 +321,17 @@ namespace Everquest2.Util
 
                 if (curChar == 0)
                 {
-                    ReadByte();
+                    byte val = ReadByte();
                     curChar = (char)PeekChar();
                 }
                 bool isStr = Char.IsLetterOrDigit(curChar);
                 if (!isStr || override_)
                 {
-                    ReadChar();
-                    char[] chars_ = ReadChars((int)curChar);
+                    byte val = ReadByte();
+                    char[] chars_ = ReadChars(val);
                     for(int i=0;i<chars_.Length;i++)
                     {
-                        if (i == 0 && !Char.IsLetterOrDigit(chars_[i]))
+                        if (i == 0 && chars_[i] != '/' && chars_[i] != '.' && chars_[i] != '_' && !Char.IsLetterOrDigit(chars_[i]))
                         {
                             this.BaseStream.Position = pos;
                             break;