Code Monkey home page Code Monkey logo

d2go's People

Contributors

13413j1j13j5315n13 avatar dulingzhi avatar hectorgimenez avatar nullptr-ref avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

d2go's Issues

notes about menu offset 0x16c

i am not 100% sure about how this works but I've expanded some menu data, most of this is just for completeness sake but there is one unclear item here about offset 0x16c that might be interesting.

I'm not submitting a PR because this is from my own code and only related because I initially lifted some of your go code and expanded it, you may or may not need this data. I initially was making sure no menu states popped up in the user interface over the region a mouse might interact with just in case the user presented a key event outside what the bot expects (with a belt or chat for example) causing the project/unproject to be incorrect.

this specific value at offset 0x16c flickers when teleporting, changing areas through clicking on a exit or using a waypoint and entering/leaving games. I have used it some to not teleport too fast in a laggy game figuring out if the controlled unit is allowed to move.

below are some snippets of the added information.. also I've added you on discord too, maybe we can discuss other things and compare some notes.

the values that seem to be reasonable

const (
	OpenMenus_CanMove_MoveAllowed       = 0
	OpenMenus_CanMove_CannotMove        = 1
	OpenMenus_CanMove_CannotMoveLoading = 2
	OpenMenus_CanMove_UNKNOWN           = 255
)

some expanded items

type OpenMenus struct {
	InGame        bool
	CanMove       OpenMenus_JoinGameState
	Belt          bool
	Chat          bool
	Merc          bool
	Party         bool
 ... snip ...
}

offsets

	om := OpenMenus{
		InGame:        blob.Data[0x0] != 0,
		Chat:          blob.Data[0x5] != 0,
		Party:         blob.Data[0x15] != 0,
		Belt:          blob.Data[0x1a] != 0,
		Merc:          blob.Data[0x1e] != 0,
		QuestLog:      blob.Data[0x0e] != 0,
                ...snip known data ...
	}

	switch blob.Data[0x16c] {
	case OpenMenus_CanMove_MoveAllowed:
		om.CanMove = OpenMenus_CanMove_MoveAllowed
	case OpenMenus_CanMove_CannotMove:
		om.CanMove = OpenMenus_CanMove_CannotMove
	case OpenMenus_CanMove_CannotMoveLoading:
		om.CanMove = OpenMenus_CanMove_CannotMoveLoading
	default:
		om.CanMove = OpenMenus_CanMove_UNKNOWN
		panic(fmt.Sprintf("unknown move state %d", blob.Data[0x16c]))
	}

Enhanced Damage/Defense

Hello,
Looking through d2go code; it looks like you're getting the item stats directly from memory. Can you confirm, then, that meta stats such as Enhanced Defense, Enhanced Damage do not work at all for d2go and koolo?

I've been putting lines like this in the NIP files:
[name] == sharkskinbelt && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 150

but now I'm realizing this will never be true, as there is never a value for enhanceddefense.

Can you confirm that please? I would like to change my NIPs if that's the case.

client is zoomed (f) in addr, offset

PatternBaseAddress = Scan(00 00 06 00 00 00 ?? ?? ?? ?? ?? ?? ?? 43 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 01 00 00 00 00 00 00 00 00 00 80 3F)
Zoom : uint64(PatternBaseAddress + 0x30)

Pattern occurs outside the base module

Zoomed In : 0x003f0000003f00
Zooming in (motion) > 0x003f0000003000 && != 0x003f0000003f00
Zoomed Out : 0x00
Zooming out (motion) > 0 && < 0xffff

Example Data

// ----[ dumping address 0x4f7e1ad6 ]--------------------------------------------------------------
//           00 01 02 03 04 05 06 07  08 09 0a 0b 0c 0d 0e 0f  01234567 89abcdef
// 00000000  00 00 06 00 00 00 8f bf  06 44 25 06 dd 43 8f bf  ........ .D%..C.. pointer 0x00060000
// 00000010  06 44 96 43 8b 3c 00 00  00 00 01 00 00 00 00 00  .D.C.<.. ........
// 00000020  00 00 00 00 80 3f 00 00  10 40 00 00 10 40 00 00  .....?.. .@...@..
// 00000030  00 3f 00 00 00 3f 00 00  00 3f 00 00 00 00 00 00  .?...?.. .?......
             ^^^^^^^^^^^^^^^^^^^^^^^ this is the data

note - Screen to World and World to Screen are 1/2 or 2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.