16.06.2020, 01:37
Kein Problem.
Ich hab bis jetzt auch folgendes:
Ganz nett:
- Nop von Anno1800.exe+47B05D entfernt den Warenverbrauch der Bewohner
- Nop von Anno1800.exe+16A7DB entfernt den Warenverbrauch beim Platzieren von Gebäuden
Aber jetzt zum Schiff.
Anno1800.exe+8B9080 bis Anno1800.exe+8B909C lager ich in einen CodeCave aus um mir am Ende rax abzugreifen. Diese Stelle wird immer getriggert, wenn ein eigenes Schiff angeklickt wird. Dadurch ergibt sich der Pointer [[rax + 0x28] + 0x10] auf das zu letzt angeklickte ShipCargo.
ShipCargo:
[[ShipCargo + 0x08] + 0x8] => CargoType
[ShipCargo + 0x10] => CargoLoaded
[ShipCargo + 0x20] => CargoAmount
CargoType ist also nicht direkt in der Struktur, sonder verwiesen. Bei Waren kann ich den Typen ändern und wieder zurück in den Kontor schieben, kein Problem. Bei Items sieht das ganze anders aus. Wenn ich da den Typen änder, dann aktualisiert sich direkt das Bild, aber nicht der echte Typ des Items. Der ist wo anders abgelegt. Ich habe noch keinen direkten Verweis von dem ShipCargo zu dem Item Typen gefunden, aber bei einem Klick auf das Item (Schiff Item) triggert Anno1800.exe+437DDD und dann ist [rcx + 10] der echte Typ. Wenn ich diesen ändere, dann habe ich das Item wirklich geändert und kann es auch benutzten. Aber es ändert sich dann der Type für alle Items dieser Art. Wenn ich das z.B. mit Holz mache, dann stapelt sich von da an Holz auf das Item drauf. Ich schätze also es liegt hier von dem ShipCargo nur ein Verweis auf eine globale Item-Liste? Also Optimierung des Spiels vielleicht? Ich würde ja eigentlich gerne neuen Items anlegen, hab das aber noch nicht so ganz verstanden.
Ich hab bis jetzt auch folgendes:
Ganz nett:
- Nop von Anno1800.exe+47B05D entfernt den Warenverbrauch der Bewohner
- Nop von Anno1800.exe+16A7DB entfernt den Warenverbrauch beim Platzieren von Gebäuden
Aber jetzt zum Schiff.
Anno1800.exe+8B9080 bis Anno1800.exe+8B909C lager ich in einen CodeCave aus um mir am Ende rax abzugreifen. Diese Stelle wird immer getriggert, wenn ein eigenes Schiff angeklickt wird. Dadurch ergibt sich der Pointer [[rax + 0x28] + 0x10] auf das zu letzt angeklickte ShipCargo.
ShipCargo:
[[ShipCargo + 0x08] + 0x8] => CargoType
[ShipCargo + 0x10] => CargoLoaded
[ShipCargo + 0x20] => CargoAmount
CargoType ist also nicht direkt in der Struktur, sonder verwiesen. Bei Waren kann ich den Typen ändern und wieder zurück in den Kontor schieben, kein Problem. Bei Items sieht das ganze anders aus. Wenn ich da den Typen änder, dann aktualisiert sich direkt das Bild, aber nicht der echte Typ des Items. Der ist wo anders abgelegt. Ich habe noch keinen direkten Verweis von dem ShipCargo zu dem Item Typen gefunden, aber bei einem Klick auf das Item (Schiff Item) triggert Anno1800.exe+437DDD und dann ist [rcx + 10] der echte Typ. Wenn ich diesen ändere, dann habe ich das Item wirklich geändert und kann es auch benutzten. Aber es ändert sich dann der Type für alle Items dieser Art. Wenn ich das z.B. mit Holz mache, dann stapelt sich von da an Holz auf das Item drauf. Ich schätze also es liegt hier von dem ShipCargo nur ein Verweis auf eine globale Item-Liste? Also Optimierung des Spiels vielleicht? Ich würde ja eigentlich gerne neuen Items anlegen, hab das aber noch nicht so ganz verstanden.