uojs / uodatareader

Provides an API to read MUL/UOP files using Node.js
6 stars 0 forks source link

It works incorrectly #5

Closed lamo2k123 closed 7 years ago

lamo2k123 commented 7 years ago

I have a suspicion that reader not working correctly. After a few method calls seek. Look map.js method readMyMethod https://github.com/kevinhikaruevans/uodatareader/blob/l2k/map.js#L39.

screen

reader return null & undefined [ [ { id: 197, z: 2 }, { id: 196, z: 0 }, { id: 31, z: 1 }, { id: 36, z: -15 }, { id: 36, z: -15 }, { id: 26, z: -15 }, { id: 79, z: -15 }, { id: 82, z: -15 }, { id: 82, z: -15 }, { id: 87, z: -15 }, { id: 91, z: -15 }, { id: 94, z: -15 }, { id: 99, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 168, z: -5 } ], [ { id: 198, z: 1 }, { id: 212, z: 2 }, { id: 216, z: 2 }, { id: 6, z: 2 }, { id: 4, z: 1 }, { id: 31, z: 0 }, { id: 36, z: -15 }, { id: 36, z: -15 }, { id: 26, z: -15 }, { id: 79, z: -15 }, { id: 82, z: -15 }, { id: 87, z: -15 }, { id: 91, z: -15 }, { id: 99, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 171, z: -5 } ], [ { id: 217, z: 2 }, { id: 209, z: 1 }, { id: 5, z: 1 }, { id: 6, z: 1 }, { id: 5, z: 2 }, { id: 6, z: 2 }, { id: 217, z: 1 }, { id: 209, z: 1 }, { id: 31, z: 1 }, { id: 36, z: -15 }, { id: 26, z: -15 }, { id: 79, z: -15 }, { id: 87, z: -15 }, { id: 95, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 170, z: -5 }, { id: 171, z: -5 } ], [ { id: 216, z: 9 }, { id: 196, z: 3 }, { id: 203, z: -2 }, { id: 6, z: 0 }, { id: 4, z: -1 }, { id: 217, z: -2 }, { id: 3, z: 1 }, { id: 206, z: 3 }, { id: 206, z: 0 }, { id: 201, z: -1 }, { id: 31, z: -2 }, { id: 26, z: -15 }, { id: 83, z: -15 }, { id: 95, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 171, z: -5 } ], [ { id: 199, z: 16 }, { id: 196, z: 6 }, { id: 204, z: 2 }, { id: 217, z: -1 }, { id: 209, z: 0 }, { id: 207, z: 0 }, { id: 209, z: 2 }, { id: 213, z: 2 }, { id: 203, z: 0 }, { id: 4, z: 1 }, { id: 207, z: 1 }, { id: 35, z: -2 }, { id: 83, z: -15 }, { id: 95, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 168, z: -5 } ], [ { id: 217, z: 17 }, { id: 241, z: 12 }, { id: 242, z: 5 }, { id: 3, z: 0 }, { id: 207, z: 0 }, { id: 217, z: -1 }, { id: 210, z: 1 }, { id: 211, z: 2 }, { id: 219, z: 1 }, { id: 218, z: 0 }, { id: 201, z: 0 }, { id: 39, z: 2 }, { id: 83, z: -15 }, { id: 95, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 170, z: -5 } ], [ { id: 5, z: 18 }, { id: 240, z: 12 }, { id: 243, z: 9 }, { id: 209, z: 1 }, { id: 213, z: 1 }, { id: 206, z: 0 }, { id: 198, z: 1 }, { id: 199, z: 1 }, { id: 214, z: 2 }, { id: 219, z: 2 }, { id: 6, z: 0 }, { id: 39, z: 0 }, { id: 83, z: -15 }, { id: 95, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 170, z: -5 }, { id: 169, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 171, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 169, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 171, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 168, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 171, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 170, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 171, z: -5 }, { id: 171, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 168, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 170, z: -5 }, { id: 171, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 169, z: -5 }, { id: 169, z: -5 }, { id: 170, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 170, z: -5 }, { id: 171, z: -5 }, { id: 170, z: -5 } ], [ { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: NaN, z: undefined }, { id: 100, z: -15 }, { id: 168, z: -5 }, { id: 168, z: -5 }, { id: 170, z: -5 }, { id: 170, z: -5 }, { id: 168, z: -5 } ] ]

lamo2k123 commented 7 years ago

https://github.com/kevinhikaruevans/uodatareader/blob/l2k/pre-parse.js Im run: const area = felucca.getLandBlock(8, 0); console.log(area); result:

[ { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined },
  { id: NaN, z: undefined } ]
kevinhikaruevans commented 7 years ago

Hmm... I'll try to get this working today. It might also be an issue with binreader not reading into the buffer correctly. I'll probably also add a few tests. :)

lamo2k123 commented 7 years ago

While all indications binreader :) If you manage to fix it today, it will be great.

lamo2k123 commented 7 years ago

Facepalm :). I looked code and solved the problem of an increase in options.bufferSize: 4096 * 100

I have to strongly increase the buffer size to grab a few blocks on the Y axis :((((((((

kevinhikaruevans commented 7 years ago

Binreader wasn't working correctly. When you use seek() it doesn't refill the buffer correctly. I've fixed it temporarily with a shitty patch, but it'll work properly now (just slow for the meantime).

https://github.com/kevinhikaruevans/binreader/issues/1

kevinhikaruevans commented 7 years ago

Try pulling the newest version of uodatareader and it should work better now.

lamo2k123 commented 7 years ago

90% of the data is equal to this.tileData id: 0, z: 0 :(

lamo2k123 commented 7 years ago

felucca.getLandBlock(~~(3787 / 8), ~~(2523 / 8))

lamo2k123 commented 7 years ago

im use file ext .uop

kevinhikaruevans commented 7 years ago

It looks like binreader didn't publish to npm correctly. I reran npm publish and it worked now.

Try it again. It should be at 0.0.5.

For felucca.getLandBlock(~~(3787 / 8), ~~(2523 / 8)), I'm getting:


  { id: 197, z: 0 },
  { id: 214, z: 1 },
  { id: 210, z: 1 },
  { id: 35, z: 3 },
  { id: 83, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 196, z: 0 },
  { id: 197, z: 3 },
  { id: 199, z: 0 },
  { id: 196, z: 3 },
  { id: 35, z: 1 },
  { id: 83, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 199, z: 0 },
  { id: 212, z: 1 },
  { id: 215, z: 1 },
  { id: 198, z: 0 },
  { id: 35, z: 3 },
  { id: 83, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 217, z: 0 },
  { id: 210, z: 4 },
  { id: 218, z: -1 },
  { id: 200, z: -2 },
  { id: 35, z: 0 },
  { id: 83, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 208, z: 1 },
  { id: 196, z: 2 },
  { id: 198, z: -1 },
  { id: 29, z: -1 },
  { id: 28, z: 0 },
  { id: 83, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 5, z: 3 },
  { id: 200, z: 0 },
  { id: 202, z: -2 },
  { id: 35, z: -2 },
  { id: 76, z: -15 },
  { id: 84, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 4, z: 2 },
  { id: 3, z: 1 },
  { id: 29, z: 1 },
  { id: 28, z: -1 },
  { id: 83, z: -15 },
  { id: 88, z: -15 },
  { id: 96, z: -15 },
  { id: 100, z: -15 },
  { id: 33, z: 1 },
  { id: 33, z: 1 },
  { id: 28, z: -1 },
  { id: 76, z: -15 },
  { id: 84, z: -15 },
  { id: 95, z: -15 },
  { id: 100, z: -15 },
  { id: 100, z: -15 } ]```