|
Post by Pilot on Oct 14, 2010 16:51:50 GMT -5
1. Introduction
In this note, I explain the game blinds WHERE ITS data while the game is running. Some software to enable exchange Them Will (I use trainer201. If you do it Properly, You Can Just Change stuff in the game (cash, stock in buildings, pilings commands to ...).
It Is Just A Somewhat updated version of The File I released in August.
The addresses
Stored all data are at a Given address. The items are hand to Know What Is The Address Of The data you are looking for, And Then, What Does the mean value.
The address in hexadecimal Given are figures of 8 digits, for example 00 54 71 E4.
What is an hexadecimal figure?
Have a look at this:
hexadecimal Decimal
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
A 10
B 11
C 12
D 13
E 14
F 15
10 16
... ...
FF 255
100 256
... ...
Why use hex?
Because a two digit hexadecimal number Is The Sami have a 8 digit binary figure. In Figure 8 digit binary ya une byte (one unit of memory in The Computer):
FF (hex) = 1111 1111 (binary) = 255 (decimal)
In this note, If The Address is underligned (00 54 71 E4) It Means You Can Change the value by a value of the Same Kind. OTHERWISE, if you do it, It Might crash the game (or I just do not know).
2. Fix addresses
Each new saved game you launch, gold EACH computer you use, most is change of addresses, accept a few. Hopefully, OTHERWISE WE Would not Be Able to do much. Here Are Those I Know and found useful:
00 56 48 18 : Blue channel (in hex, 4000 max, more, it gets very funky ...)
00 56 48 2C : Green channel (in hex, 4000 max)
00 56 48 38 : Red channel (in hex, 4000 max)
00 56 4E 5C : Check channel or not (check one channel only works in shed)
00 53 D5 B0: Name of the saved game (with full path c: / ...)
00 54 71 E4: The player address (the address value Gives The Player)
00 55 60 04: The day (the value Gives the Day)
00 55 66 80: The time (the value Give the time of the day, I do not remember EXACTLY The Rule, drank 00 00 00 00 Means It Is 00.00
00 4F 30 70: The fog depth (from 0 to 2).
00 57 45 94: address data of laser weapon (?) (+4: Next 18) (4: moth, 6: Fire Burst + sub + Devastator, 7: Leach, 10: Hologram, 11: laser)
00 55 55 80 Downtown trader address (I Think It Is The first trader in memory)
E9 B8 00 53 (gold is it 00 53 E9 BC?) Limbo! address (I Think It Is The first building in memory)
6A 00 55 A8: Address of first moth (?)
00 57 35 D0: Address of first location
00 54 5E 6C: Break state (1 = pause, 0 = The Game Is playing)
00 53 EA 34: state of the cat box (whether you are plying in multiplayer or Not) (0 = The box is Not On The Screen, 1 = The Box Is On The Screen, you are filling the "To:" field, 2 = The Box Is On The Screen, you are Filling the text field)
00 4F 63 28: Where the "To:" Is Stored in memory. I Might Change It 4 signed by an other string (for the box, if EA 00 53 34 IS set to 1)
00 4F 63 0C: Where the "To:" Is Stored in memory. I Might Change It 4 signed by an other string (for the box, if EA 00 53 34 IS set to 2)
00 53 EA 20: Title of the text box (You Are Allowed 19 signs)
00 53 EA 38: Text Of The text box (You Are Allowed 33 signs)
00 55 AC FC: Debug screen is (1) gold off (0)
00 55 FC B0: Address of The Pilot Viewed
00 51 BF 20: Distance From The Camera Of The moth Viewed
00 51 BF 00 51 BF 2A to 3C (and not have WORD DWORD) Camera position. But It Is Too Complicated for me to Understand how it works. However, I Have managed to do a bit of "cooking":
look to North:
Set 0051BF2A, 0051BF34, 0051BF36 to 0, Then 51BF38 to 4000 (in hexadecimal), Then 0051BF28 to 4000
Look to Above:
Do the same, 0051BF38 The Set to 0, Then 0051BF36 to C000
to look under:
Sami, and 0051BF38 set to 0, Then 0051BF36 to 4000
Look to South:
same, and to set 0051BF38 C000, C000 Then 0051BF28 to
Look to West:
Sami and 0051BF28 0051BF38 and set to 0, Then 0051BF34 to C000, Then 0051BF2C to 4000
to look East:
Sami and 0051BF28 0051BF38 and set to 0, Then 0051BF34 to 4000, Then 0051BF2C to C000
3. Pilots
Every pilot in the game (you, pirate, trader, and thug I imagine) are Organised In The Same Way. When a pilot is dead, however it restes in memory.
0 Consider That Is The base address of The Pilot. For the player, it is for example The One Has Given 00 54 71 E4. The Value to add address to "go to the address you want:
(!! Given value in Decimal!!)
- 12 : Pilot signature (always A0 00 03 54)
+ 0 : Pilot name
20 + : Pilot Leasing (1 = in a moth, 2 = in a building, 3 = in a Monorail, 4 = in a Monorail hall, and maybe 0 = dead)
24 + : Vehicle or building address Where the pilot is.
28 + : Seat (0: pilot seat, 1: passenger seat)
36 + : Cash
40 + : Pilot kind (see appendix 5)
rem: For example, if you change address to The Player "any pilot, you go Would icts in moth view Would not Be Able to control it. If you change to a kind pilot, you control it. Except this, I am not really sure it is Worth Changing the kind.
+ 112 : Address of The Last Post On The message board
+ 208 : View (Moth = 0, = 1 Msg Board, navigation = 2, dirty Computer = 3, player ranking = 4)
+ 248 : First command (see next page)
+ 608 : Home Address (a building)
+ 612 : Home Address (for faction trader)
rem: Let's imagine you wish to write a software That Would list all moth from a faction, you should "go to downtown trader 1, and check it from The Home & the kind of all piles Until The Last One)
+ 616 : The First Address of building in memory (add 4 to go to next building. Up to 20 buildings)
+ 716 : Address Of The First Pilot in memory (add 4 to go to the next pilot. Up to 10 pilots)
+768 : Address Of The next pilot in the game (the last one got 00 00 00 00 here)
The commands
One of 6 command forfaitaire DWORD (D for double. A Word Is Made of Two bytes), The First One Tells What command it is. The commands follow Each Other. I do not know How Many You Can Have.
(- Means "It Does not Matter")
Buy: 00 00 00 08, goods ref, -, -, number of goods, building address
Sell: 00 00 00 09, -, -, ""
Order (get for free for factions): 00 00 00 0B ", -, -, ""
Deliver (give for free for factions): 00 00 00 0C ", -, -, ""
ReqBg: 00 00 00 79
Dock hangar: 7A 00 00 00, -, -, -, -, -
Leave Airlock: 00 00 00 7B, -, -, -, -, -
Go Crater: 00 00 00 7C crater ref, -, -, -, -
Fly nodes: 00 00 00 7D node ref, -, -, -, -
Hangar GB: 00 00 00 02, building address, -, -, -, -
Wait: 00 00 00 01, time ,-,-, day, -.
Hunt: 00 00 00 10, building address, -, -, -, -
Rob Vh 00 00 00 11, vehicle address, -, -, -, -
Kill Vh 00 00 00 03, vehicle address, -, -, -, -
Scanvenge: 00 00 00 18, building address, -, -, -, -
Get cargo: 00 00 00 12, ship address, -, -, -, -
Flypos: 00 00 00 82 coord1, height, coord2, -, -
Tails at: 00 00 00 23, building address, -, -, -, - (do never change it ... well, you'll see what happend ...)
made weapon: 00 00 00 13 equipped ref, -, -, -, building address
unknown (probably sells Everything): 00 00 00 19?
BuzBg: 00 00 00 20 time building ref ,-,-, -
get new moth: 00 00 00 0F,? (0 if cab)
unknown (Wait Until Player Is Getting close): 00 00 00 1B -, -, -, -, -
unknown (commit suicide): 00 00 00 14, -, -, -, -, -
Unknown (): 24, -, 3, vehicle address, -, -
unknown: 25, vehicle address,
passenger wait: 00 00 00 0A pilot ,-,-,-,- address (rem: if pilot address = 0, waits for passenger to leave moth) (the passenger has shed go in memory ...)
repair at: 00 00 00 80, building address, -, -, -, -.
The craters ref:
00 00 00 01 Riverside
00 00 00 02 Reservoir
00 00 00 03 : Highrise
00 00 00 04 Downtown
00 00 00 05 : Gamma
00 00 00 06 Alpha
00 00 00 07 Port
00 00 00 08 : Mine
(I am not sure With heaven and Midway)
4. Vehicle:
- 12 : Vehicle Signature (always A0 00 04 54)
12 + "Fly high" status (0 = normal, 1: fly high, 2: + No moth fly high fire at you)
16 + : Carried by a moth (Address Of The vehicle)
28 + : HUD view (0: Weapons, 1: Cargo, 2: Equipment)
+ 184 : Autopilot (byte, 0: not installed, else: version)
+ 185 : Flight (byte, 0: not installed, else: version)
+ 186 : Power (byte, 0: not installed, else: version)
+ 187 : Shield (byte, 0: not installed, else: version)
+ 188 Navigation (byte, 0: not installed, else: version)
+ 189 : Radar (byte, 0: not installed, else: version)
+ 190 : Target (byte, 0: not installed, else: version)
+ 191 : Infrared (byte, 0: not installed, else: version)
+ 464 : Moth rental (if in a shed)
+ 468 : Slot for Moth location in Space (7F FF Yew moth in Hangar)
+ 472 : Owner Address
+ 476 : Kind Moth (1: MM 2: SY, 3 NT, 4: HK, 5: DH, 6: PL 7: Al, 8: SW)
+ 480 : Power (max Depends on the cell type: cell 1: 2 000 000, cell 2: 4 000 000, Cell 3: 2000000, Cell 4: 1 500 000)
+ 492 : Target Kind (1: moth, 2: building, 3: goods, 4: Monorail)
+ 496 : Targeted vehicle (Address for all, excepted for monorail: number in location)
+ 500 : Salvage drone (0: none, 1: salvage drone 2: superdrone)
+ 512 : Engine type (0: none, 1: # 1 engine, 2: engine # 2, 3: engine # 3)
+ 516 : Cell type (0: none, 1: cell # 1, 2: cell # 2, 3: cell # 3, 4: cell # 4, 5: Merge)
+ 520 : Pod type (0: none, 1: Smallest, 2: small, 3 medium, 4: Big 5: Biggest)
+ 540 : First weapon (gun, missile, or after burner, from goods ref, if nothing 7F FF, +4 for next weapon, at MOST 10. No. 9, show tac-nuke, No. 10 show big bob)
+ 580 : Ammunition (+4 For the next weapon)
+ 660 : Shield status (SI max 4000 in hexadecimal (4000 = full strength))
+ 664 : Engine status (SI max 4000 in hexadecimal (4000 = destroyed))
+ 668 : Frame status (")
+ 672 : CPU status (")
+ 676 : Power status (")
+ 680 : Weapon status (")
+ 712 : Address of first heap of goods (+ 4 for next, there's Might Be 5)
+ 732 : Pilot address (0 if Outside, shows pilot if not 0)
+ 736 : Passenger Address (0 if none, shows passenger if not 0)
+ 744 : Next Moth (goal Sometimes, There Is Something else too .... However thesis Even In The Next moth box iz at + 744)
5. Heap of goods:
+ 0 : Goods type
+ 4 Number of goods
+ 8 : Status (0 = Outside, 1 = in a moth)
12 + : Vehicle (or slot number if outside)
6. Building:
- 12 : Building signature (?)
12 + : Building name
48 + : Building Type (1)
52 + : Building Type (2)
56 + : Address of second hand buildings for
64 + : Owner type (0: none, 1: Pilot, 2: building)
68 + : Owner Address (HQ of pilot for factions)
72 + : Public or private status (0 public, 1 private, Does only work if Player Is The owner)
84 + : Quantity of first object in inventory (goods ref 00 = ore. Next object, + 8 01 = pure water)
88 + : Price (if sold by The Player, it'll OTHERWISE ... Depends on the quantity)
+ 768 : Money
+ 796 : Vehicle in Building at bay 0 (+ 4 for next)
+ 820 : Airlock status
· 0: Ready
· 1: Waiting for Mother to enter
· 2: Waiting for Mother to leave
· 3: Moth in airlock, from inside to ouside
· 5: Airlock to form Moth Hangar
· 6: Moth from Hangar to Airlock
+ 824 : Vehicle in airlock (or going into)
+ 892 : Building next address (the last building, "tunnel blockage" has 00 00 00 00)
+ 896 : First pilot in queue (+4 for next)
+ 928 Number of piles in queue
second hand:
for trading posts:
first ordering (ordering next: +16)
+ 4 : First Goods ref
+ 8 : Goods Quantity
12 + : Pilot That has Been Asked to supply goods
16 + : Address Building (building Which Ordered)
for all: (?)
1008 + : Quantity of first stashed good (next: +4)
for factions (and police) HQ:
+ 0 : First one pilot wanted list (address of pilot) (next: + 4) (if no address to list in Enemy: is not there yet wanted list, can pay fine)
+360 : First enemy pilot (pilot of address) (next: + 16)
+364 : First enemy level (fine level)
+368 : First day could be enemy wanted list (send enforcer for player)
+372 : First time enemy of the day could be wanted list (send enforcer for player)
Building with turrets for:
44 + : Vehicle Targeted
7. Laser turrets
(Laser turrets do not give "any target address to Their missiles / lasers ...)
16 + : Coordinate 1 (1 foot = 55 in decimal)
20 + : Height
24 + : Coordinate 2
54 + : Status (1 = here, 0 = destroyed)
72 + : Weapon type (see ref goods. Aim It Does not liked, so The missiles arent Anything Worse)
76 + : Building address (Do not Know If It Can Be Changed)
8. Location in space:
goods:
16 + : Coord 1
20 + : Height
24 + : Coord 2
+ 102 Object Address (If It Is A heap of goods)
Monorail location:
16 + : Coord 1
20 + : Height
24 + : Coord 2
56 + : Address of object type (for Monorail = 0)
+ 130 : Time Before Leaving
+ 122 : Department Of The Monorail (0 or 1)
+ 134 Rental: (Hall) as a byte! 0 while driving, Might Be 0F (When turning ...)
missile / laser
16 + : Coord 1
20 + : Height
24 + : Coord 2
56 + : Address of object type
98 + : Target Kind (1: moth, 2: building, 3: goods, 4: Monorail) (?)
+ 102 : Target address
+ 118 : Missile sender (pilot address)
+ 122 : Weapon type
+ 126 : Next coord 1
+ 130 : Next height
+ 134 : Next coord2
UAV:
moth:
16 + : Coord 1
20 + : Height
24 + : Coord 2
84 + : Moth Address
What to do with that?
gold exchange keep Exploring the address using the Free software "gametrainer 2.01" (I suspect That gamehack, an other software Caused Some Serious breakdown on my computer)
If you want to programm, in C / C + +, There Is a header file windows.h (I think) With The functions and ReadProcessMemory WriteProcessMemory.
Good luck to Any hacker, and if There Is Any questions, send me an email at fabien_vidal@yahoo.com
Not sure if that's what you wanted? Edit: If not try this link. translate.google.com/translate?hl=en&sl=fr&u=http://membres.multimania.fr/hardwarhacker/Home.htm&prev=/search%3Fq%3Dhttp://membres.multimania.fr/hardwarhacker/%26hl%3Den%26sa%3DG&rurl=translate.google.com
|
|
|
Post by Pilot on Oct 17, 2010 22:26:30 GMT -5
I found this one Timiski's site.
G. Hacking ______________________________________________________________________________
This section contains various slightly random notes intended to assist people that wish to hex edit and 'hack' the game. Everything here is entirely at your own risk - I strongly suggest you copy anything you intend to change...
------------------------------------------------------------------------------
U2.04 Memory Address Map, based on the writings of flap:
"In this note, I explain where the game stores its data while the game is running." A full text could be found at Zedo's old forum, but that source is no longer available. I've edited this down to critical game-specific information. Note this is relevant to U2.04, and incomplete. All values can theoretically be edited without crashing the game, unless indicated as "***".
Fixed Addresses:
00 54 71 E4 : The player address (the value gives the player address). 00 55 60 04 : The day. 00 55 66 80 : The time (00 00 00 00 means it is 00.00). 00 4F 30 70 : The fog depth (from 0 to 2). 00 55 55 80 *** : Downtown trader address (first trader in memory). 00 53 E9 B8 (or is it 00 53 E9 BC ?) *** : Limbo! address (first building in memory). 00 54 5E 6C : Pause state (1 = pause, 0 = the game is playing). 00 53 EA 34 : State of the chat box (0 = The box is not on the screen, 1 = The box is on the screen, you are filling the 'To' field, 2 = The box is on the screen, you are filling the text field). 00 4F 63 28 : Where the 'To' is stored in memory. 00 4F 63 0C : Where the 'To' is stored in memory. 00 53 EA 20 : Title of the text box (you are allowed 19 signs). 00 53 EA 38 : Text of the text box (you are allowed 33 signs).
Pilot Addresses:
"Consider that 0 is the base address of the pilot. For the player, it is for example the one given at 00 54 71 E4. Add the value to address to go to the address you want:" (values are decimals)
- 12 *** : Pilot signature (always A0 00 03 54). + 0 : Pilot name. + 20 : Pilot location (1 = in a moth, 2 = in a building, 3 = in a monorail, 4 = in a monorail hall, and maybe 0 = dead). + 24 *** : Vehicle or building address where the pilot is: (1) Monorail example: ?? ?? 00 01 = Central-Alpha-Mines. (2) Monorail Hall example: ?? ?? 00 01 = Alpha Depot. + 36 : Cash. + 40 : Pilot kind: 1 = player; 3 = Special (alien or plot); 4 = Trader; 5 = guard, attack, cop; 6 = Taxi; 7 = faction trader; 8 = Pirate; A = Scavenger; B = Police Patrol; C = Builder; E = Enforcer. + 112 : Address of the last message on the message board . + 248 : First command (see below). + 608 : Home Address (building). + 616 : Address of the first building in memory (add 4 to go to next building. Up to 20 buildings). + 716 : Address of the first pilot in memory (add 4 to go to the next pilot. Up to 10 pilots). + 768 *** : Address of the next pilot in the game (the last one as 00 00 00 00 here).
Command Addresses:
"One command is made of 6 Dwords (D for double - a word is made of two bytes), the first one tells what command it is. The commands follow each other. I don't know how many you can have." ("-" means it doesn't matter.) (Also see Duncan's AI Plans/Orders notes.)
Buy : 00 00 00 08, goods ref, - , - , number of goods, building address Sell : 00 00 00 09, goods ref, - , - , number of goods, building address Order (get for free for factions) : 00 00 00 0B, goods ref, - , - , number of goods, building address Deliver (give for free for factions) : 00 00 00 0C, goods ref, - , - , number of goods, building address Dock hangar *** : 00 00 00 7A, - , - , - , - , - Leave Airlock *** : 00 00 00 7B, - , - , - , - , - Go Crater *** : 00 00 00 7C, crater ref , - , - , - , - Fly nodes *** : 00 00 00 7D, node ref, - , - , - , - Go Hangar : 00 00 00 02, building address, - , - , - , - Wait : 00 00 00 01, I don't remember after Hunt : 00 00 00 10, building address, - , - , - , - Rob Vh : 00 00 00 11, vehicle address, - , - , - , - Kill Vh : 00 00 00 03, vehicle address, - , - , - , - Scanvenge : 00 00 00 18, building address, - , - , - , - Get cargo : 00 00 00 12, cargo address, - , - , - , - Flypath *** : 00 00 00 82, ? Queue at *** : 00 00 00 23, building address, - , - , - , - Fit weapon : 00 00 00 13, equip ref, - , - , - , building address Unknown (probably sells everything) : 00 00 00 19, ? Get new moth *** : 00 00 00 0F, ? Unknown (wait until player is getting close ) : 00 00 00 1B, - , - , - , - , - Unknown (commits suicide) : 00 00 00 14, - , - , - , - , -
Goods Addresses: (all *** )
00 00 00 00 : Ore 00 00 00 01 : Water 00 00 00 02 : Chemicals 00 00 00 03 : Scrap metal 00 00 00 04 : Food 00 00 00 05 : Body parts 00 00 00 06 : Gems 00 00 00 07 : Ex metal 00 00 00 08 : Sheet metal 00 00 00 09 : ConstMat 00 00 00 0A : CompComp 00 00 00 0B : MachParts 00 00 00 0C : Plastics 00 00 00 0D : Explosives 00 00 00 0E : Fusion parts 00 00 00 0F : Trigger 00 00 00 10 : Matter 00 00 00 11 : Engine #1 00 00 00 12 : Engine #2 00 00 00 13 : Engine #3 00 00 00 14 : Cell #1 00 00 00 15 : Cell #2 00 00 00 16 : Cell #3 00 00 00 17 : Cell #4 00 00 00 18 : Fusion cell 00 00 00 19 : After burner 00 00 00 1A : Smallest pod 00 00 00 1B : Small pod 00 00 00 1C : Medium pod 00 00 00 1D : Large pod 00 00 00 1E : Largest pod 00 00 00 1F : Salvage drone 00 00 00 20 : Super drone 00 00 00 28 : Sprat*10 00 00 00 29 : Swarm*10 00 00 00 2A : Devastator 00 00 00 2B : Leach*10 00 00 00 2C : Flares*10 00 00 00 2D : Chaff*10 00 00 00 2E : Starchell*10 00 00 00 2F : Tac-nuke 00 00 00 30 : Big bob 00 00 00 31 : Fireburst 00 00 00 34 : Underkills*5 00 00 00 35 : Ground base*5 00 00 00 37 : Hologramms*5 00 00 00 38 : Laser 00 00 00 39 : Plasma kanon 00 00 00 3A : Laser turret 00 00 00 3B : Pulse laser 00 00 00 3C : Death ray 00 00 00 43 : Origin Unknown 00 00 00 44 : Mass driver part 00 00 00 45 : Mystery package 00 00 00 46 : Black box 00 00 00 47 : Minerals 00 00 00 48 : Air filters 00 00 00 49 : Pleasure cubes 00 00 00 4A : Alcohol 00 00 00 4B : Textiles 00 00 00 4C : Furs 00 00 00 4D : Huskar cigars 00 00 00 4E : Servant droids 00 00 00 4D : Narcotics 00 00 00 50 : Cloning device
Crater Addresses: (all *** )
00 00 00 01 : Riverside 00 00 00 02 : Reservoir 00 00 00 03 : Highrise 00 00 00 04 : Downtown 00 00 00 05 : Gamma 00 00 00 06 : Alpha 00 00 00 07 : Port 00 00 00 08 : Mine
Weapon Addresses:
- 12 *** : Vehicle signature (always A0 00 04 54). + 472 : Owner address (pilot). + 480 : Power (max is 4000 in decimal). + 496 : Targetted vehicle . + 540 : First weapon (cannon, missile, or afterburner, from goods ref, 7F FF if nothing, +4 for next weapon, at most 10. 9 = Tac-Nuke, 10 = Big Bob). + 580 : Munitions (+4 for the next weapon). + 660 : Shield status (+4 for the next weapon). + 664 : Engine status (+4 for the next weapon). + 668 : Structure status (+4 for the next weapon). + 672 : CPU status (+4 for the next weapon). + 676 : Power status (+4 for the next weapon). + 680 : Weapon status (+4 for the next weapon).
Buildings Addresses:
- 12 *** : Building signature (?). + 12 : Building name. + 68 : Owner address (pilot of HQ for factions). + 84 : First object in stock (goods ref 00 00 00 00 = Ore. Next object, + 4 : 00 00 00 01 = pure water). + 86 : Price (if sold by the player). + 768 : Money. + 796 : Vehicle in Building at bay 0 (+ 4 for next). + 892 *** : Next building address (the last building, tunnel blockage has 00 00 00 00).
Laser Turret: (precise location unknown)
+ 0 : Coordinate 1 (1 foot = 55 in decimal). + 4 : Height. + 8 : Coordinate 2. + 38 : Status (1 = here, 0 = destroyed). + 56 : Weapon type (see goods ref - but it doesn't aim). + 60 : Building address (don't know if it can change).
------------------------------------------------------------------------------
U3 Beta 4 Savegame Format, from Duncan:
"In order of appearance:
* Supply lists - It seems that every Trading Post has its own supply list. The section that contains these lists also has some coding that involves dependent traders and builders.
* Hangars - [see notes by Wez].
* Hangar ID list - Compilation of the Hangar IDs.
* MUD - Text describing hangars and building walkways.
* Messages - Your messages are just in between the MUD section and the pilots section. Each message occupies one line, one line contains 40 bytes.
* Pilots - Already described elsewhere.
* Pilot ID list - Compiled list of pilot IDs.
* Pod contents - Between the pilot ID list and the Mines section is a section that holds the contents of the pods. This is some sort of dump. The contents of all pods in the game are stored here (only the contents, so not when a pod is empty). Forgot to look at the linewidth, but one line contains the type of Good, the quantity and the ship its in. Contents are not ordered per pod.
* Monorail - Monorail text plus coding.
* Demands list - After the monorail text you find the demands. Thought it has a linewidth of 40. This list does not only contain the hangar and the good it wants, there is some additional code. Could be priority tags and/or tags to show up in demand lists of the Trading Posts etc.
* Moth Position, Orientation - If a moth is airborne it appears here. It holds the position, the orientation, speed, flight direction.
* Blank - I don't know the function of this, but it sure is an incredible amount of 00."
------------------------------------------------------------------------------
AI Occupation notes, based on the writings of smurph:
"AI 'profession' is encoded by a single byte in the save game file. Open up the save game in a hexeditor, and search for the pilot name as an ANSI string. About 45 bytes from the start of the pilot name you will see the following set of bytes ab,cd,00,00,xy where xy codes for the 'profession'. If you edit a save made right at the start of day 1 ab,cd is 10,27. The codes (xy) for pilots in existance at the start of the game in b4 are:"
00 - limbo 01 - human pilot 03 - plot moths (e.g. laz-research x2) 04 - trader 05 - edit - laz attak, klamp guard, police guard, scrubber guard 06 - cab 07 - faction trans 08 - pirate 0A - scavenger 0B - edit - police patrol, klamp patrol, laz patrol 0C - builder 0D - gang trans 0E - enforcer 10 - thug 11 - brother kahuna
"Codes 05 and 0B can be interchanged with no problems and some interesting effects. 0B pilots are more active (i.e always hunting for enemies) in the game (at least in b5)."
Unfortunately, changing careers does not automatically change the 'plans' for pilots - Duncan writes: "Pilots with new professions but behaving like their old days still have their old plans list. Clearing this list won't help, because as soon as no order is finished anymore, no new ones are going to get in. Normal beta 4 game example: Start as Admin as a dealer. Fly around a little, soon 2 shady pilots will target you and fire their devastators in your bud. If you are killed you will end up on foot in your hangar. Blag a moth, board and launch. You will notice that the bloke responsible for your early death is still hanging around doing nothing. When you look at the savegame you will notice the lack of plans. By the way these pilots have the profession 0F - it's missing in smurph's list, and 20 Devastators. This could of course also be the 0F order module not generating new plans."
------------------------------------------------------------------------------
AI Equipment notes, based on the writings of Eight:
Shown as address - hex dec - item:
Pirate
50CBD - 1C 28 - medium pod 50CC9 - 1F 31 - drone 50CEB - 28 40 - sprats (missile1) 50CF2 - 31 49 - fireburst (missile2) 50CF9 - 34 52 - underkill (missile3) 50D00 - 35 53 - groundbase (missile4) 50D0C - 3A 58 - laser turret 50D18 - 38 56 - laser 50D2F - 12 18 - engine 2
Scavenger
50D89 - 1A 26 - smallest pod 50D95 - 1F 31 - drone 50DA1 - 2C 44 - flares 50DAD - 38 56 - laser
Trader
50E06 - 1E 30 - largest pod 50E12 - 1F 31 - drone 50E1E - 2C 44 - flares 50E2A - 28 40 - sprats 50E36 - 38 56 - laser 50E42 - 13 19 - engine 3 50E4E - 39 57 - plasma kannon
Unknown
50B3C - 3A 58 - laser turret 50B48 - 39 57 - plasma kannon 50B54 - 31 49 - fireburst 50B60 - 29 41 - swarm 50B77 - 12 18 - engine 2
List of items (hex dec item)
------------------------------------------------------------------------------
00 0 ore 01 1 pure water 02 2 chemicals 03 3 scrap metal 04 4 food 05 5 body parts 06 6 gems 07 7 ex metal 08 8 sheetmetal 09 9 const mat 0A 10 comp comp 0B 11 mach parts 0C 12 plastics 0D 13 explosives 0E 14 fusion parts 0F 15 trigger 10 16 matter 11 17 engine 1 12 18 engine 2 13 19 engine 3 14 20 cell#1 15 21 cell#2 16 22 cell#3 17 23 cell#4 18 24 fusion cell 19 25 afterburner 1A 26 smallest pod 1B 27 small pod 1C 28 medium pod 1D 29 large pod 1E 30 largest pod 1F 31 drone 20 32 superdrone 21 33 frameMM 22 34 frameSY 23 35 FrameNT 24 36 FrameHK 25 37 FrameDH 26 38 FramePL 27 39 FrameAL 28 40 Sprat 29 41 Swarm 2A 42 Devastator 2B 43 Leach 2C 44 Flares 2D 45 Chaff 2E 46 Star Shells 2F 47 Tac Nuke 30 48 Big Bob 31 49 fireburst 32 50 fireburst sub 33 51 swarm sub 34 52 underkill 35 53 groundbase 36 54 groundbase sub 37 55 hologram 38 56 laser 39 57 plasmakanon 3A 58 laserturret 3B 59 pulse laser 3C 60 deathray 3D 61 NewMothNT 3E 62 NewMothHK 3F 63 NewMothDH 40 64 NewMothMM 41 65 NewMothSY 42 66 NewMothPL 43 67 Unknown Origin 44 68 MassDriver Part 45 69 Mystery Package 46 70 Blackbox 47 71 Minerals 48 72 Airfilters 49 73 Pleasure Cubes 4A 74 Alcohol 4B 75 Textiles 4C 76 Furs 4D 77 Huskar Cigars 4E 78 Servant Droids 4F 79 Narcotics 50 80 Clone 51 81 FrameSW 52 82 Trojan 53 83 NewmothSW 54 84 ManMunitions 55 85 ManComponent 56 86 ManOreProc 57 87 Distiller 58 88 Narcotron 59 89 Fumbler 5A 90 Disabler 5B 91 Blaster Max notes: "Start of ~'case block' 0x50996 - first item assignment, end ~0x50EED."
------------------------------------------------------------------------------
U3 Beta 5 AI Starting Gear notes, based on the writings of Nazgutek:
"Open up the exe [hardwarW.exe] and starting at the following addresses, replace the 5 bytes with 0x90 (that's 90 HEX, not 90 decimal). These will remove various items from starting NPC types:"
Pirates: 50CC3 - no pod 50CCF - no drone (has no effect) 50D06 - no missile * 50D12 - no laser turret
Scavengers: 50D8F - no pod 50D9B - no drone (has no effect) 50DA7 - no flares
Traders: 50E24 - no flares 50E30 - no sprat
"Example: We wish to remove the pirates' laser turrets, so we would go to file offset 50D12 (which is in hex), and change the byte there and the next four to 0x90,0x90,0x90,0x90,0x90.
* Pirate Missile Note: The code seems to randomly choose either Sprats, Groundbase, Underkill or Fireburst. The hack address above will remove any missile install. If you feel adventurous, you can not apply the above hack, and instead change the four missile entries to other items: just before the above no missile hack address, you will find BA28000000, BA31000000, BA34000000, BA35000000. Keep the BA there, but the next four bytes are the item ID (stored in little endian format, as per all intel asm). To make them only have sprats, change the 31/34/35 to 28.
I noticed that pirates (and to an extent the faction patrol/guard moths) that don't have a laser turret exhibit some strange behaviour... upon entering a crater where their Kill/Rob target is, they'll sit there, pointing at it until the target either docks or enters a tunnel to another crater. If the target didn't dock, the 'hunter' will continue this impotent behaviour.
I'm concluding that the AI isn't coded to purchase upgrades for the moth, except for a few items, namely flares, sprats and plasmakannons."
------------------------------------------------------------------------------
AI Plan/Orders notes, based on the writings of Duncan:
"There are Pilot IDs in the game, the Hangar ID in the game and the place to find the destination of the pilot. These IDs change (sometimes) each time you start Hardwar. To make this a little more trackable I will use a relative byte position. Therefore I will call the bytes E8 03 byte 0 and 1. E8 03 is a few bytes before the bytes coding for the name of the pilot. Example: 78 FC 5F 02.
Some 72 bytes before E8, directly before the whole bunch of FFFFs, that seem to separate each pilots block, is the ID of that pilot. It's 3 bytes, always followed by 02. With Hangars also an ID can be found, if you take the E8 03 before a hangar's name and you go back some 44 bytes you will find the code for that hangar. Example D4 4B C3 02. These bytes are preceded by FF 7F 00 00."
Based on 'Downtown Trader 3' in U3 beta 4: "The byte E8 (in E8 03) is used as the reference position and numbered 0.
starting at pos.4 - name of the pilot
pos.-72 = Pilot ID 1. pos.-20 = Pilot ID 2 of Zero Cool, note that it is repeated. Something with targeting/killing. pos.+48 = Pilot ID 2, occurs in multiple regions of the savegame file. pos.+64 = Pilot's profession (posted by Smurph). pos.600 = Home hangar.
Starting at pos.+300 are the orders/plans of the pilot. A row of 24 bytes stands for 1 order. The first byte identifies the order.
7D = FlyNodes. 7C = GoCrater. 02 = GoBg - go to hangar. 08 = B: - buy. 09 = S: - sell.
In this case Downtown Trader will go to the Mines crater, fly to Prison Mine, buy in total 16 units of ore and sell 8 units at Bargain Moths and 8 units at Shears Yard."
Other plans codes (plans as they appear in the terminal using exec [pilot],plans):
00 n.o. 01 Wait 02 GoBg 03 KillVh 04 n.o. 05 n.o. 06 n.o. 07 KillPil - Police Force 08 B: - buy 09 S: - sell 0A Passenger Wait - Cab 0B C: - collect 0C D: - deliver 0D n.o. 0E Board vehicle 0F Get New Moth 10 Hunt 11 RobVh 12 GetCargo 13 Fit F: 14 self destruct - E.T. 15 CordonArea - Police Patrol 16 GetCargoPos 17 GuardCargo - e.g. what Laz-Attak 909, Laz Repair 004, Laz Guard X1 and X2 do 18 Scavenge 19 unknown - Trader 1A RepairBg - Repair hangar 1B Unknown - Freeze until player gets near then next plan - E.T. 1C Unknown - Fly towards player and dance + freeze thrusters - E.T. 1D Unknown - Not restricted to E.T. also Laz-Research X1 1E n.o. 1F n.o. 20 BuzBg 21 AttackBg - attack hangar 22 Guard Area 23 Q at - queue 24 n.o. 25 n.o. 26 Get All - goods, sort of scavenging 78 Need pod 79 ReqBg - a request prior to docking 7A DockBg 7B LeaveAirlock 7C GoCrater 7D FlyNodes 7E n.o. 7F Recharge 80 Repair 81 n.o. 82 FlyPos
n.o. = not observed in savegame file. E.T. = Extra Titanian. E.T./Police/Trader = typical command with typical pilot professions.
"A limited number of syntaxes are used for the plans rows. There's a syntax for doing something with a hangar - like 02 and 10. Something with goods like buy, sell, collect and dump. And something with coordinates - like FlyPos. Furthermore there are codes that are only present in these orders which function I do not know. They're not obligatory if you command a pilot.
Basically, if you want to command another pilot, you have to start a plan row with the necesary command, and add the basic requirements being e.g. the hangar to fly to or the type and amount and place to buy/sell/collect/dump goods.
Coordinate system example: 82 00 00 00 { 9B 92 86 *02* 52 B8 09 *00* 22 01 A7 *02* 03 } 00 00 00 2B 36 C8 0F
82 - FlyPos This position is coded between the brackets. 2B36C80F can be left out. The stared (*) bytes separate the Y,Z and X coordinate (in that order). The three bytes that code for a coordinate are combined to form one hexadecimal number. Attention: start reading from the right. So 86929B and 09B852 and A70122. If you increase the X coordinate say from 00 00 90 to 22 01 A7 then the position is further in the North (or direction heading 000). If you increase Y - more east.
Got the altitude more accurately now, studied a couple: 090000 1208 ft (thats 00 00 09 in the file) 0A0000 1343 ft 0B0000 1477 ft 0C0000 1611 ft 0D0000 1745 ft 0E0000 1880 ft 0F0000 2014 ft All with an accuracy of +/- 1 ft.
This is not the entire altitude range of course. If you want to intrapolate or extrapolate you can recalculate the hexadecimal numbers to decimal and make a linear regression. Use the function for the line to calculate the decimal number and convert it back to hexadecimal."
------------------------------------------------------------------------------
Hangar header notes, based on the writings of smurph:
"Here is the structure of the first 3 lines (at line width of 24 bytes) of the hangar entries for the betas (and probably for 2.04 as well)."
------------------------------------------------------------------------------
aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa 00 00 00 00 00 00 00 00 bb bb 00 00 cc 00 00 00 dd 00 00 00 ee ee 00 00 ff 00 00 00 gg 00 00 00 hh hh hh hh ii 00 00 00 jj 00 00 00 kk 00 00 00 aa - Hangar name.
bb - Hangar software.
cc - I will call attribute 1. Known codes are: - 01 Faction HQ - 02 Trade Centre - 03 Faction Garrison - 04 Cabs - 05 Factory - 09 Produces Bodyparts - 0A Reseller - 0B Estate Engine - 0D Bodyparts/Nuclear Stuff - 0E Loan Shark - 0F Abandoned Terminal - 10 Misc. Colony Hangers - 11 Make clones
dd - I will call attribute 2. This sets the type of business in combination with attribute 1. For attribute 1 05, attribute 2 values are: - 00 - Weapons makers. - 01 - Component Shops. - 02 - Chemical factories - 03 - Moth Factories. - 04 - Ore processors. - 05 - Mines. - 06 - Food Factories. - 07 - Purifiers. - 08 - Recyclers. - 09 - Cigar makers. - 0A - Booze makers. - 0B - Narcotics Fcctories. - 0C - Sewage control. - 0D - Techparts. - 0E - Bargain Moths - 0F - Central Industrial - 10 - Shears Yard
For attribute 1 0A, attrbute 2 values are: - 00 - Weapon resellers - 01 - Breaker Makers - 02 - Bars - 03 - Builders
ee - Some kind of hangar index. It runs from 0010, through to 8310, increasing by 1 in the order the hangars appear in the game save file. Not all hangars have this set, but it seems essential to have a hangar index for several of the above attributes to work.
ff - Not sure about this one - player hangars are all 12, faction owned hangars always have this set, but the value is different between beta 4 and beta 5.
gg - Not for sale, 01 is purchasable (if not currently owned), 02 is common to all faction owned hangars.
hh - Owner ID.
ii - Set access. 00 is public, 01 is private.
jj and kk - Only set on faction, gang, and Police HQs."
Solidox notes: "From memory, jj and kk are lighting and turrets thus why it only appears on faction buildings. There are two private/public fields, one is a bitmask inside the menu options field. The other, ii, is a hard lock which overrides the other one, it is used in the Abandoned Terminal and also is the reason you can't get into Colony HQ when you've purchased it."
------------------------------------------------------------------------------
U3 Beta Hangar notes, based on the writings of Wez:
Hex edit a savegame. The header block for each hangar can be identified from a four-character code followed by the full current name of the hangar. The four letter codes never change. They are:
------------------------------------------------------------------------------
AAWL Abandoned Terminal AAV1 Acid Hangar AAHY Agrochem AA1L Air Purifier A AAAX Air Purifier D AAN7 Air Purifier G AAE5 Air Purifier M AAH9 Alpha Cabs AAIA Alpha Construction AASM Alpha Depot AAH7 Alpha Depot II AAIZ Alpha Estate Agent AAUG Alpha Police Station AAIC Alpha Trading Post AAAO Bargain Moths AAC9 Bill Moritz AAV7 Blackeye's Hangar AAF2 Blue Repository AAG2 Breaker Maker 1 AAC2 Breaker Maker 2 AAH5 Breaker Maker 3 AAFL Breaker Maker 4 AAOC Breaker Maker 5 AACZ Central Industrial AAWB Central Monorail AAFJ Charlie Wadsworth AAEU Charlie's Pizza AACU Clone Farm TEST Colony HQ AAVX Concealed Hideout KWIK Conurbation 1 AAEF Conurbation 2 AABE Conurbation 3 AAPU Conurbation Two AAV4 Crash Hangar AAIB Craven Components AAUD Customs Block AAV3 Darkbase AAEX Derelict Factory AAF4 Derelict Warehouse NEWP Downtown 05 AABN Downtown Builders AABS Downtown Chemicals AACW Downtown Components AAAH Downtown Estates AAEB Downtown Moths AABQ Downtown Munitions AAC4 Downtown Outpost AADG Downtown Recycling AAOH Dr Jobes Weapons AACI Dunroamin AAFX Empty Complex AA1U Empty Hangar A1 AAUF Empty Hangar A2 AA1S Empty Hangar A3 AA1T Empty Hangar A4 AA1Q Flight Academy AAPX Flyers Retreat AAOL Freds Builders AAPG Gamma Cabs AAPE Gamma Estate Agent AAPC Gamma H3 AAPZ Gamma Monorail Depot AAPY Gamma Police Garrison AAOE Gamma Trading Post AAEW General Industrial AA1M Groover's Hangar AAAD Hardwarp FM EGG1 Hideout 1 EGG2 Hideout 2 EGG4 Hideout 4 EGG5 Hideout 5 EGG6 Hideout 6 AASI Highrise Cabs AAFZ Highrise Construction AAEM Highrise Estates AASK Highrise Motors AAES Highrise Police Station AAF5 Highrise Trading Post AAHE Home Base AAEQ HR Conurbation 1 AAEO HR Vacant 1 AAEP HR Vacant 2 AAEN HR Vacant Tower AAPT Hunger City AAP3 Island Garrison AACG Junkyard AAR0 Jupiter Four AAU5 Klamp Macro 1 AAU6 Klamp Macro 2 AAU7 Klamp Macro 3 CTOP Klamp Secret Base AAN5 Klamp-G Arms AAPF Klamp-G Chemicals AAN6 Klamp-G Components AAUI Klamp-G FacDef AAOG Klamp-G Fe-Mill AAC7 Klamp-G Garrison KLAM klamp-G HQ AAE4 Klamp-G Medical AAE7 Klamp-G Mine AAOF Klamp-G Moth Factory AAHR Klamp-G Purifier 1 AAHS Klamp-G Purifier 2 AAHN Klamp-G Purifier 3 AAHO Klamp-G Purifier 4 AAHP Klamp-G Purifier 5 AAHQ Klamp-G Purifier 6 AAFY Klamp-G Weapons Shop AAHX Lazarus Alpha AAHZ Lazarus Chemicals AAHW Lazarus Components AAT7 Lazarus Hightower LAZA Lazarus HQ AAFP Lazarus HQ Garrison AAA1 Lazarus Macro 1 AAA3 Lazarus Macro 2 AAAJ Lazarus Macro 3 AAEH Lazarus Macro 4 AAEG Lazarus Macro 5 AAAP Lazarus Macro 6 AAEI Lazarus Macro 7 AAFC Lazarus Mine AAFE Lazarus Mine Garrison AAFA Lazarus Mine OreProc AAHV Lazarus Moths AAHT Lazarus Munitions AAHU Lazarus Ore Proc AAPN Lazarus Purifier DOOR Lazarus Secret Base AAF7 Lazarus Weapons Shop LW01 LightWell 01 LW02 LightWell 02 LW03 LightWell 03 LW04 LightWell 04 LW05 LightWell 05 LW06 LightWell 06 LW06 LightWell 07 LW08 LightWell 08 LW09 LightWell 09 AAV6 Lord Nicon's Hangar MAS2 Mass Driver 1 AAVV Mines Cabs AAVU Mines Monorail Depot AAOM Mines Trading Post MOND Mis Op Cabs AAEV Misery Heights AADZ MisOp Finance AAB4 Monastery AAFR Monorail Depot AABH Ore Proc 2 AACO Ore Processing AAPV Paranoidopolis AAV2 Pirates Nest PIG2 Police Garrison PIGS Police HQ AABV Prison Mine AAHK Prison Oubliette AAA5 Psycho Bobs 1 AAGC Psycho Bobs 2 AAV5 Purpledrome AAF8 Recycle Joint AARC Reservoir Cabs AASH Reservoir Central AARA Reservoir Def 1 AAU9 Reservoir Def 2 AAU4 Reservoir Trading AAG5 Restricted Area AAFI Riverside Cabs AAE3 Riverside Chemicals AAEZ Riverside Construction AAFU Riverside Cops AAFS Riverside Estates AAP6 Riverside Monorail AAN4 Riverside Parts AAEJ Scrubber Hngr AA1X Scrubber Outpost AAP0 Scrubber Xchng AAIY Scrubbers Alpha AAEK Scrubbers HQ AAV9 Secluded Residence AAC1 Sentinel 1 AAAZ Sentinel 2 AACJ Sentinel 3 AACQ Sewage Control AAF0 Sewage Control AABT Shears Yard AAVW Sith Manor AAH6 Skinners HQ AAPO Skinners Outpost AAE2 Software Refinery AAG8 Software Shack 1 AAB0 Software Shack 2 AAP1 Special Arms Co AAAF Syd's Workshop AAVZ Tarquin's Hangar AAAL TechParts AAB7 Terraformer AAPW Terror-rise AAGS The After Dark AAER The Belfry AAFN The Garidge AAVB The Knocking Ship AAG9 The Morgue AAFV The Ore House AAV8 The Pit EGG3 The Shanty Inn AAFT The Slum AAIG The Squat AAE0 The Waterfront AAV0 Thunderbase AAEY Titan University AABI Trade Central AAEL Traders Rest BLOC Tunnel Blockage AABA Vacant 0007 AAGB Vacant 0008 AAED Vacant 0009 AAD2 Vacant 0010 AAD4 Vacant 0011 AAD8 Vacant 0012 AAGI Vacant 0013 AACA Vacant 0014 AACB Vacant 0015 AAGL Vacant 0016 AAGO Vacant 0017 AAGW Vacant 0018 AAAU Vacant 0019 AAAW Vacant 0020 AADE Vacant 0021 AADI Vacant 0022 AADS Vacant 0023 AADV Vacant 0024 AADX Vacant 0025 AAB9 Vacant 0026 AADO Vacant 0027 AAGZ Vacant 0028 AAG1 Vacant 0029 AAAB Vacant 0030 AAAM Vacant 0031 MUN1 Vacant 0032 AABC Vacant 0033 ARSE Vacant 0034 AABK Vacant 0035 AABK Vacant 0036 AACN Vacant 0037 AACS Vacant 0038 AAFW Vacant Unit AAN3 Waterfront Booze AAVY Zero Cool's Hangar Below the header is a series of data for each item. Each cell is 1 hex byte, so 4 bytes are used per property (long integer). The format is:
------------------------------------------------------------------------------
HEX Stock Sell Price Buy price Max buy Unknown Produce Qty Item ST ST ST ST SP SP SP SP BP BP BP BP MB MB MB MB ?? ?? ?? ?? PM PM PM PM Item codes follow the same order as listed in Eight's AI Equipment notes above, except that Wez appears to starts the list at 1 rather than 0.
The footer block takes the form:
------------------------------------------------------------------------------
?? ?? ?? ??|?? ?? ?? ??|?? ?? ?? ??|hangar cash|?? ?? ?? ??|?? ?? ?? ?? ?? ?? ?? ??|?? ?? ?? ??|?? ?? ?? ??|?? ?? ?? ??|moth @ bay1|moth @ bay2 moth @ bay3|moth @ bay4|moth @ bay5|moth @ bay6|
------------------------------------------------------------------------------
Edit: Zedo added a mod section tell me if you want this moved there. ^^
|
|