Actions

Key def.dat: Difference between revisions

From Populous Wiki

No edit summary
No edit summary
Line 4: Line 4:


== Introduction ==
== Introduction ==
Key def.dat is a file that you have to create by using the Populous Key editor included in the game (DOWNLOAD: key def.dat). Once you save, the file is created and located in ./save/Key def.dat. The file is structured similar to the [[header format|Header Format]]. Each key is stored in a single hexadecimal address, the combination key is always 1 in front of it. So if 0x1 is pause 0x2 will be the combination key. The combination key is like shift + key but in the file format it reads key + shift.  
Key def.dat is a file that you have to create by using the Populous Key editor included in the game (DOWNLOAD: key def.dat). Once you save, the file is created and located in ./save/Key def.dat. The file is structured similar to the [[header format||Header Format]]. Each key is stored in a single hexadecimal address, the combination key is always 1 in front of it. So if 0x1 is pause 0x2 will be the combination key. The combination key is like shift + key but in the file format it reads key + shift.  


Each key needs to be converted to hexadecimal to a integer. This can be done in programming by simply reading information from the address, else if you're using a hex editor (like HxD) you'll have to do it by hand using a converter like http://home.paulschou.net/tools/xlate/ (use the values from CHAR), once you got the number it should range from 1-105, if it exceeds that, you're reading the wrong location or you got your math wrong. In !!SECTION!! you will be told how to convert the values from keycode (the integer number you just got) to ASCII using programming methods. If you want to change them by hand without programming, all the key definitions are on this list http://www.penticoff.com/nb/kbds/ibm104kb.htm, remember that you have to convert those numbers back to hex from the paulschou's link, or by programming.
Each key needs to be converted to hexadecimal to a integer. This can be done in programming by simply reading information from the address, else if you're using a hex editor (like HxD) you'll have to do it by hand using a converter like http://home.paulschou.net/tools/xlate/ (use the values from CHAR), once you got the number it should range from 1-105, if it exceeds that, you're reading the wrong location or you got your math wrong. In !!SECTION!! you will be told how to convert the values from keycode (the integer number you just got) to ASCII using programming methods. If you want to change them by hand without programming, all the key definitions are on this list http://www.penticoff.com/nb/kbds/ibm104kb.htm, remember that you have to convert those numbers back to hex from the paulschou's link, or by programming.

Revision as of 03:39, 26 November 2013

Change Populous default keys using programming or hex editor. The file was decoded on November 23rd 2013.

All the addresses are correct, but my typing is not. If there is a typo or wrong address let me know or correct it!

Introduction

Key def.dat is a file that you have to create by using the Populous Key editor included in the game (DOWNLOAD: key def.dat). Once you save, the file is created and located in ./save/Key def.dat. The file is structured similar to the |Header Format. Each key is stored in a single hexadecimal address, the combination key is always 1 in front of it. So if 0x1 is pause 0x2 will be the combination key. The combination key is like shift + key but in the file format it reads key + shift.

Each key needs to be converted to hexadecimal to a integer. This can be done in programming by simply reading information from the address, else if you're using a hex editor (like HxD) you'll have to do it by hand using a converter like http://home.paulschou.net/tools/xlate/ (use the values from CHAR), once you got the number it should range from 1-105, if it exceeds that, you're reading the wrong location or you got your math wrong. In !!SECTION!! you will be told how to convert the values from keycode (the integer number you just got) to ASCII using programming methods. If you want to change them by hand without programming, all the key definitions are on this list http://www.penticoff.com/nb/kbds/ibm104kb.htm, remember that you have to convert those numbers back to hex from the paulschou's link, or by programming.

This is not a complete decode of the file, however its most of the common key commands for Populous, if you find more, feel free to add them!


Combination keys

The combination keys use a different keycode format. I don't know if there is a pattern to this or if the game has custom keycodes for these.

Not all of these are tested.

    No Combo key = 0
    Shift = 1
    Shift + CTRL (or App button?) = 3
    CTRL = 4
    Shift + ALT = 5
    Ctrl + alt = 6
    Shift + ctrl + alt = 7
    Alt = 20

Available keys

Toggle view key

    0x23 = Key
    0x24 = Combo key

Encyclopaedia key

    0x38 = Key
    0x39 = Combo key


Set Map Marker 1 key

    0x35 = Key
    0x36 = Combo key


Set Map Marker 2 key

    0x68 = Key
    0x69 = Combo key


Set Map Marker 3 key

    0x83 = Key
    0x84 = Combo key


Set Map Marker 4 key

    0x88 = Key
    0x99 = Combo key


Goto Map Marker 1

    0x113 = Key
    0x114 = Combo key


Goto Map Marker 2

    0x128 = Key
    0x129 = Combo key


Goto Map Marker 3

    0x143 = Key
    0x144 = Combo key


Goto Map Marker 4

    0x158 = Key
    0x159 = Combo key


Zoom view in key

    0x173 = Key
    0x174 = Combo key


Zoom view out key

    0x188 = Key
    0x189 = Combo key


Quick Load key

    0x203 = Key
    0x204 = Combo key


Quick Save key

    0x218 = Key
    0x219 = Combo key


Zoom to shaman key

    0x233 = Key
    0x234 = Combo key


Chat message key

    0x248 = Key
    0x249 = Combo key


Command Tracking key

    0x263 = Key
    0x264 = Combo key
    * Had problems w/ this key


Release guarding people key

    0x278 = Key
    0x279 = Combo key


Toggle Level Stats key

    0x293 = Key
    0x294 = Combo key


Rotate building key

    0x308 = Key
    0x309 = Combo key


Assign people to group 1 key

    0x323 = Key
    0x324 = Combo key


Assign people to group 2 key

    0x338 = Key
    0x339 = Combo key


Assign people to group 3 key

    0x353 = Key
    0x354 = Combo key


Assign people to group 4 key

    0x368 = Key
    0x369 = Combo key


Assign people to group 5 key

    0x383 = Key
    0x384 = Combo key


Assign people to group 6 key

    0x398 = Key
    0x399 = Combo key


Select people in group 1 key

    0x413 = Key
    0x414 = Combo key


Select people in group 2 key

    0x428 = Key
    0x429 = Combo key


Select people in group 3 key

    0x443 = Key
    0x444 = Combo key

Select people in group 4 key

    0x458 = Key
    0x459 = Combo key

Select people in group 5 key

    0x473 = Key
    0x474 = Combo key


Select people in group 6 key

    0x488 = Key
    0x489 = Combo key


Zoom to people in group 1 key

    0x503 = Key
    0x504 = Combo key


Zoom to people in group 2 key

    0x518 = Key
    0x519 = Combo key


Zoom to people in group 3 key

    0x533 = Key
    0x534 = Combo key


Zoom to people in group 4 key

    0x548 = Key
    0x549 = Combo key


Zoom to people in group 5 key

    0x563 = Key
    0x564 = Combo key


Zoom to people in group 6 key

    0x578 = Key
    0x579 = Combo key


Zoom to Reincarnation site key

    0x593 = Key
    0x594 = Combo key


Toggle Local Selection key

    0x608 = Key
    0x609 = Combo key


Reselect last selection key

    0x623 = Key
    0x624 = Combo key


Reorient view key

    0x638 = Key
    0x639 = Combo key


Display last dialog key

    0x653 = Key
    0x654 = Combo key


Toggle auto deselect key

    0x668 = Key
    0x669 = Combo key


Call to arms key

    0x683 = Key
    0x684 = Combo key


Scatter people key

    0x698 = Key
    0x699 = Combo key