Jump to content
XCOMUFO & Xenocide

Ufo Goodies!


Recommended Posts

all in vain i have tried bringing this units recovery time to 0 days.
i tried with clark wehyr editor...but
he seems to disapeear along with 30 other soldiers when i save the soldier.dat...xcom hack v 2.54 crashes with invalid property valur... any help is appreciated this is maybe the culmination of the ufo story.

dont let me down now... give me a hand.

edit: LOL i didt even gave you a savegame how could i expect a hand... Edited by Gurluas2000
Link to comment
Share on other sites

:Coffee: ... what a night....
YES FINALLY i uncovered the secret of the aliens...
notice that when you get a personal armor or another armor...
both sprite ,body and armor stat changes...
ive now concluded that aliens are just hidden armors ingame...
i didt tested my ethereal armor yet because of the recovery days...
but im pretty sure it is an ethereal.
if this is correct then editors can now get the new armors as an attrivute and players can freely change from sectoid to chryssalid...
sounds like a dream but im close of making the dream reality...
i just need a good hacker to remove the recovery and im a happy man. :Leek:
Link to comment
Share on other sites

Soldier entries in file soldier.dat are 68 bytes long in EU, and 70 bytes long in TFTD. If you copy file from TFTD to EU, then soldier data will be shifted, so the armour value could be different from those normally available (0, 1, 2 and 3)

Now, "Ethereal" string is not very far (117 entries to be exact) after the armour strings ("PERSONAL ARMOR", "POWER SUIT" and "FLYING SUIT") in english.dat file. If you ever programmed in C/C++ you would know that arrays don't check range overflow. So, armour string 117 would be string that is 117 after beginning of armour descriptions.

In the battlescape, game will be looking for sprites number 117 and will most likely crash.
Link to comment
Share on other sites

If thats true then wheres the alien skins??
beside we have to test it...
and then 5 6 7 8 can be alien armors in that case...
beside there is an armor named "High"
we also have to test that...
and aliens despite my theory can also just be
appearences...or sec

since you proved yourself worthy then try removing the recovery data and or changing the armor of a few soldiers so we can see
if 5,6,7,8,9 etc. are alien armors.


if you got msn then add me.
[email protected]

edit: i also noticed that some soldiers has unused appearances and are asking for files like
MAN_}.SPK
MAN_P.SPK
MAN_0FP.SPK Edited by Gurluas2000
Link to comment
Share on other sites

Hmm, I guess the game may just be wanting to look for man_(insert number) here. That means that you could probably add additional sprites for X-Com soldiers.

--

Gurluas2000: If you really want to fiddle around with invalid values, you can do it the way I edit the game. You can use a hex editor, or use MS-Edit in binary mode (essentially a hex editor - but you have to work with ascii characters).

First of all, run MS-Edit by typing [b]edit[/b] in the command line, or in the start > run dialog.

Do the usual file, open and then search for the savegame directory containing the soldier.dat file that you want to edit.

Select it, then click on the 'open binary' checkbox and then set the rows to 68. Now click on open.

Now every soldier in soldier.dat will be laid out in a nice table. The numbers are in ascii symbols, but you can move the cursor about and refer to the number in the lower right corner of the screen (the bit that says Value:)

The first and foremost rule of thumb is to switch on your cursor overwrite mode so that you overwrite anything you want to edit - or remember to delete the old value. If you add any extra information, everything will shift across and really get messed up.

To actually change any values, you have to use the alt + 3 numpad numbers combination. For a value of 32, you enter alt+032. For 128, alt+128, etc. This doesn't work for values 0 to 26. For these values, you need to hold down ctrl and then press p followed by a letter.

Letter a = 1, b = 2, c = 3 ... z = 26. So to enter a value of 13, ctrl+p then m. To get a value of 0, you need to enter ctrl+P+2 (No, I don't know why 2 gives a value of 0, but it does).

Alernately, you can just cut an paste existing numbers.

Note that most entries will be single bytes (or 8-bit values which can store values between 0 and 255) - these are represented by each letter. Some value are stored as short integers (or also known as a 'Word') (16-bit values, 0 to 65535 (halve this if you want negative values)) - it's stored as two bytes. These can be a bit tricky to work out, but never fear, MS-Calculator (scientific mode) can come to the rescue! (OR if you've got a scientific calculator with N-mode algebra on it)

[b]Note[/b] If the following starts to mess with your head, don't worry too much about it. I just had to put it in because the recovery time is a short integer.

To figure out a short int, enter the value into MS-Calculator in 'Dec' (decimal mode), then switch over to hex (hexadecimal mode). In hexadecimal, make sure that the 'Word' radio button is checked. This forces the value into a short integer. Say I want to find out how to enter 65520. 65520 in Hex is FFF0. Split this value into FF and F0. Enter FF into the calculator while in Hex mode then switch over to decimal to get the decimal equivalent. In this case, 255. F0 gives 240. Now we know FF is 255 and F0 is 240. Now, flip this around so that F0 comes first and FF comes last. Then enter the values in that order. Don't ask me why, that's just how the computer stores its information.

(Always work with a four number hex value. If you get a value with only 1, 2 or 3 numbers, add 0's in front of it to make 4 values)

[b]End possibly confusing bit [/b]

Now, to get right down to what you want to get done. The bed rest value is a short integer, so you're looking at editing two characters. Rest time is stored in column 13 and 14 (it's actually offsets 12 and 13 - MS-Edit's rows and columns start counting from 1 rather than 0).

Just set whatever values in these two columns (for that weird soldier of yours) to 0 (ctrl+p+2), then save the file. All done!

If anyone of that seemed confusing, just ask and I'll try to clarify.

For more information, Hatfarm's hacking information may be of some help.

- NKF

P. S: Just the obligatory disclaimer. I will not be held responsible for anything odd that may happen to your computer should you fill your files with odd values and the game starts to behave oddly. When I did a few goof ups and entered invalid values, I have had the game lock up the computer or just simply crash after entering values well beyond the valid range in the data files. But whatever. Edited by NKF
Link to comment
Share on other sites

Moved to X-Com 1: Technical Support.
Link to comment
Share on other sites

I could've sworn this topic was already in technical support at one time. It's got a mind of its own it has!

- NKF
Link to comment
Share on other sites

Nope, sorry. Best I can do is post on the forums - or use the board's instant messaging service. Well, it's not really instant, but close enough.

- NKF
Link to comment
Share on other sites

Here is how I think it works:

Armour value in soldier.dat file (offset +3Eh) tells the game what type of unit is used. If it is set higher than values of human armours, game uses data that is directly after normal armours.
- Unit sprites are aliens.
- Pictures in equipment screen are different files (easy to add)
- Names of armour in soldier screen and on crew list are just entries following armour names in english.dat file
- Armour stats (front/rear etc.) are data following normal armour stats.

Last two (names and stats) are screwed. I suppose stats are stored in .exe. I have no clue what will happen after they are modified to be proper alien stats. (Probably it will destroy some other data or code) Edited by Quantifier
Link to comment
Share on other sites

In TFTD armour value is stored in soldier.dat file at offset +1Eh.

And one more thing. All soldier editors I used are foolproof and don't allow to set armour out of range 0-3. The only way to get alien as X-Com unit is to edit soldier.dat file with binary editor. But that's not really a problem.
Link to comment
Share on other sites

A simple sprite change is good and all, but more importantly: Do you get the damage modifiers?

Try turning yourself into a chryssalid and compare the heavy cannon's AP and HE shells on your soldier. AP shells should do almost twice as much damage as the HE shells on average.

- NKF
Link to comment
Share on other sites

I just dealt 61 points of damage (not 61 HP taken, just raw damage of 61) to lobsterman with gauss rifle (60 dmg avg). It is not possible to do it with regular, alien lobsterman. I think sets of damage modifiers might be f'd up just like armour stats. Edited by Quantifier
Link to comment
Share on other sites

There are a few abilities that are associated with the unit sprite images. For example, the explosion for the biodrones. I think melee abilities are controlled by the alien 'skin' as well, but I cannot be sure. Biodrones and Silacoids for example can burn the floor if under AI control as they are moved about.

Actual armour levels, stats, flight ability, M. C. skills, rank, damage modifiers, what item to drop when unit is unconcious/dead, etc (basically all the stats that really matter) are not controlled by the image. I guess your units just start off as X-Com soldiers, but with a different look - and maybe different armour levels (do the armour levels correspond with the very first value in each unitref.dat entry? 4 being sectoids, 5 snakeman, 6 ethereal, 7 muton... 15 male civilian, 16 female civilian and 17 for zombie?

- NKF
Link to comment
Share on other sites

  • 11 months later...
  • 3 months later...
  • 2 years later...
  • 12 years later...
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...