![]() |
Tutorial for Program use The Program is used to Set Target objects Data for Tardata.dat. Before starting.. If you are not expert with Tardata.dat editing matters, or even if so, Please read Moggy's definative "techtardata.htm" webpage as you will find it indispensible.You must read the page and more as I will not explain all related issues and terminology.The level of the use of the program and guide here assumes you are familiar with most related matters.Also, since the issues can be confusing at times you will definately need his webpage to refer to.I still need it every time..!! Program Settings / Saves / Folder Structure
When the program runs it creates 2 folders if they do not pre-exist.The "editz" folder and within that the "saves" folder. Unfortunately this brings to mention the "impassable program bug" that the program has.I developed the program with intention of making edits up to 255 lines, however it has a bug that you must be aware of.It will only edit @ 47 lines at a time and then crashes.It is called a "nesting error".I can't fix it, as I would have to redesign the program subroutines / loops to do so.So Please,do not ask! You should be able to complete the next line safely.You are recommended to quit after 45 lines.If you exceed that you are on your own!I also recommend taking some screenshots before then to be sure you remember what you have produced in this edit.dax Also : Do Not use "Cancel" button at any time or the program exits without warning! The program has some other "bugs", and some shortcomings that I attempt to compensate for with added program features.Another big one is that on Screen 2 if you minimize the window to an icon and then restore it, then screen lines, text displays and target icons will vanish.You can however refresh the lines with the "Home" Key, but only during the mousing select phase.Sorry, but any target icons except the last will not be recoverable!Nor the text until you make another edit.The issue is due to the minimzation / restore not the Screenlines.The "Home" Key will refresh Screenlines without destroying the icons, normally. I made the "Screenshot" feature so you can save pictures to compensate for this and the fact that you cannot display loaded data from an "edit.dax". Also; there is a bug that often makes the first target icon on a tile draw larger than normal.You can "fix" it by minimizing the window to a taskbar icon then restore it, and use the "Home" Key to refresh the screenlines.Then the icon will show the proper size.Ideally, this is the only time you should minimize the window to avoid the other display losses as noted above.The error also may occassionaly occur at other less convenient times.Unfortunately there is no good remedy for that.However, it does not always occur. I tried to fix this error, but lost 2 days work with no remedy.So it just has to be tolerated! I'm sort of annoyed and a little embarassed by some of the "Bugs" , shortcomings and quirks of the program, but I believe its usefulness outweights these.Once you are aware of the issues and get used to it, it is a good little program.And it will save hundreds of hours for people I am sure, so thus I must release it.
Shown below pic of XVI32 Hex editor is an edit.dax of only 1 single line of data that is to say, only 1 edit has been made This would be the data created for a single object for Tardata. The data consists of 10 bytes (what I call a "Line" of data).The first 8 bytes as underlined in red are X,Y data. The First 4 bytes of which, as highlighted above with the X in green is the "X" coordinate data.The next 4 bytes highlighted above with the Y in yellow is the "Y" coordinate data. The next to last byte as highlighted with blue is the "Tmod #" which is for the object type. The last byte emphasized with black is for the object orientation, that is; the direction the object faces. Unlike the usual Tardata coding only 1 byte is used for orientation, not 2.It will be the larger byte (byte 25 of a Tardata line).So just remember when you code this to enter ony a number between 0 and 255 decimal! - To read more see the TSetAdd program readme) ![]() I'm sure at this point you are wondering, "Where is the TCode?" ...Well, I hope you are... lol! The answer is the TCode is not present or edited by this program.It is to be set by the other program at the time the .dax is set into Tardata.I agonized over this decision, but ultimately since my idea is to create data sets that can be placed into any base, or Tardata, the setting of a TCode byte here would hinder the Re-use of Data. ....Well, onward.. Of the X,Y bytes the bytes hightlighted by Purple are the superior bytes (note: I'll call them the "f" bytes later, even though they may contain other than F, etc. numbers).If you view Moggy's page you will see the rather large pic of the grid and the prominent marked (mostly "ff" , etc.) graphics will give you an idea of why I refer to these bytes as the "f" bytes. Next, marked on my pic is 2 black triangular marks.The bytes above these are "the more significant of the lesser bytes".They are edited by the Program on every mouse (you will grasp later) selection.The other 00 byte to left of these are what I would call the "small data".They are only edited if you make a specific selection to enter the data.They are rarely needed comparatively, as they produce very small movements. "Re-use of Data" .. Keep this in mind ..In making edit.dax smaller is better.. because the .dax can be appended later.The more individual small "sets" you make the less editing you will do later, as you can Re-use the Data in the future.It gives you more flexibility.
Monitor / Desktop Resolution The program is made only to be run at 800 x 600 monitor / desktop resolution.You Must Only use this as otherwise the data will be wrong.The mouse selector programming is only calibrated for this size!
Shown below is the first Window you will see when you run the program is called "Screen 1".It will open filling an 800 x 600 screen completely.It must not be resized as this will cause errorsin the data.Do not use the maximize either.It can be minimized to a Windows taskbar icon and then restored, but even this has its quirks as I will explain later. ![]() The reason is that the area covered by Tardata for a base (block) X,Y data bytes cover an area of the width and height of 4 x4 tiles, or 16 total. One thing you must grasp later is that the area covered in your Tardata for your Base (i.e. the whole Target area) will only be aligned to an exact lineup with EAW World terrain tiles if you center the location coded in Targets.dat (Not Tardata!) to the upper left corner of the tile that it centers on.In other words the EAW World coordinates must coincide with the exact place a tile begins in the EAW world.(I will refer later to this matter as "centering the target" even though it is not really centered on the tile.The reason it is "centering" is that a target object placed at the approximate center of the grid @ "0000 0000 0000 0000" (actually .. at the upper left of tile area 11 for our purposes) will then be at the center of the target area.. another way of understanding this is: coordinates of the upper left of Screen 1 would align with a terrain tile .. not just visually , but also in data coordinates of the EAW World. Or to say; If you "center" the Target, in Targets.dat then Tardata coordinates will coincide with the EAW Terrain, (thus EAW.tm ;). O.K. if confused do not worry.. or strain yourself here.It is not something you have to deal with at this point and I'll tell how to solve that all later ;).
Let us continue briefing on practical program use..One thing to ease your mind is; think of this program interface as just a visual reference. What is done by selecting a Tile button is to elect to edit within an area of the target area grid squares.There are 256 (16 x 16) of these.Each Tile area contains 16 (4 x4) of these.
"Screen 2" (as I call it..) is really the Main Program editing Window.It replaces Screen 1.All editing hereafter will take place from Screen 2.You will not see Screen 1 again.It only shows at Launch of the Program. ![]() Here you see again a background .bmp image, named "tile1.bmp".It is just a standard EAW tile that was saved as a .bmp and resized to 512 x 512.I found this resizing to produce good accuracy. For each tile area there is also a background image.They are named "tilex.bmp" where x is for the appropriate tile area available; 1 through 16.You can replace these backgrounds with tile images of your own, resized of course, as occurs in EAW at the base location for exact edits (if "centered", i.e. aligned). Here you see there are lines also.They are also drawn by the program.They are not part of the background image. Each of the Red lines here mark a large (a.ka. superior or "f" ) grid area squares.As you see there are no labels for these (Screen 1 had none either).Because really by using this program and having a copy of Moggy's "techtardata.htm" page available as well as editing for a while you will find your way around datawise.Also I did not wish to clutter the screen and there is a programming limitation of how much can be shown at once.What you are looking at is where you will be editing.If you "center the target" later, and use specific background tiles for what your EAW base target area uses you will find the accuracy of editing most comforting. For best results on your important bases I highly recommend it.You will find that using this method you do not need to go back and forth to in EAW to check your edits.You can see where on the Terrain objects will be located.It is a great time-saver.Place a whole edit.dax full of objects.Then go into the game and look.You can always fine-tune later by redoing it or even by hex edit for small details. The other method of using backgrounds is to not center the target but make 16 EAW screenshot cuts of your EAW base target area instead.Or even just a picture you wish to use.This I never did.I prefer "centering", and recommend it.So otherwise. you will have to explore how any other method works on your own.For simple edits you can even use just any background and keep your mental image in mind.But you should use an image. The program can run with no background image, but usually produces errors! ...Back to the editing.. You can see the tile you are on displayed in lower left corner.Also shown is the small screen lines.These are grid divisions which represent "the more significant of the lesser bytes".These are the grid box locations that when the mouse is placed over later (and the BackSpace Key is pressed, during that mousing phase) the lesser data location will be marked. Also the text display of the program also shows 5 possible keyboard key selections.The program is waiting for a selection.For program operation there are basically two phases that the program proceeds with from here.One is this one, in which it waits for any 5 Key selections: Del; Undo Line [Delete] Key , which voids the previous edit .
You can use Del , PrtSc , Pg UP and Pg DN and the program will execute those functions then return to wait still at this phase for any other Key Press.In other words it is a programming loop. ![]() If you elect to stay on the current tile or not you will move on to the next phase. (Also you can use Esc key to exit at this point) The difference of what happens is if you elected "Yes" to stay on the current tile the program moves directly into the next editing phase with no screen refresh.At that point you will see new text displays showing the new 5 Keys options available. But if you elect "No" then the Screen will refresh and buttons for new tile selection will be drawn, similar to Screen 1.You will need to Press a tile button to go to that tile.Then the program will reset the same loop and be waiting again for the already described 5 Key functions. (In other words.. think of this as replacing Screen 1 for all practical purposes as far as using buttons to select the tile to go to) ![]() Above is shown the new buttons on Screen 2 - You Must Press a Button to go to a Tile.Otherwise the program stays at this screen.No other functions are available, including Exit!
Below is shown the new Screen 2 at the second phase Here is the so-called "second" or "mousing" phase.The program waits in a loop for the new 5 Keys to be pressed.The Keys are as follows:
Esc; Exit [Escape] Key , to Exit the Program.
Similar to the previous loop, you can use Home , Pg UP , and Pg DN Keys to perform the desired functions and still continue to wait at this phase for another Key press.The Esc Key directly exits the program.
It is Important to note that the function settings; Pg UP; Tmod and Pg DN; Rotation will set values that will continue until you change them.That is to say; you could set 45 lines of AAA (Tmod # 18 which is the default) with an Orientation of "00" (for North, the default) without changing these values once set.
At this point I must elaborate again on some of the limitations / quirks of the program.
Once the BackSpace is pressed the the second or "mousing" phase is complete a small red box will be displayed at the approximate location.Also Text for the Decimal # of the Tmod The box is supposed to be the size of the small boxes made of the fine grid lines.You see the actual edits made by mouse selection should be understood as follows: The Red lines on Screen 2 represent divisions of the so-called Superior data or "f" bytes.These are the same as the lines on Screen 1.The darker black lines here on Screen 2 are only for visual reference.They would be equivalent of 1/4 markers , or "40" ,"80" , "C0" in hexidecimal.The small lines (including the dark lines) divide each area.Or more specifically the boxes do, as far as using the mouse.Within each area of the Red there are 16 small boxes.Each of these as said represents a coordinate.The coordinate is supposed to be 1/16 of "the more significant of the lesser bytes" data, or 1/16 of 256 (hexidecimal FF).
Now this brings me to the matter of the previous phase or loop Key selections, namely: ![]() Here is a pic of the box that opens when you use Pg UP; Edit X.The X data is in the reverse order as it would be seen in the file.That is just a quirk I left in the program.The data shown here is F (hexidecimal 0F) which is the "the more significant of the lesser bytes", and 00 which is the "small" byte.These bytes always show as 00 since they are hard-coded by the program, unless you change them here.You can change these 2 bytes to any hexidecimal values.Same is true for "Y" Function (not shown).
Since after you make an edit pick with the mouse the program will reset to the previous phase again; in that next phase is when you have a chance to make a change to the data.After that you cannot change it.Unless of course you chose to use Del; Undo which voids the previous edit.
Here is a screenshot of some target objects I set during an edit. The program's built in screenshot feature works well!It makes a .bmp.And the picture will include the whole editing window.It will name the picture "screenshot(xxx)" and will be in the same folder as the .exe.The name string (xxx) being a combination of the Tile you are on (x..) followed by the Line of edit (..x).So in this case I was on Tile 1 and the line of edit was 11.Thus the pic was named "screenshot111.bmp".
To read how to adjust this matter read the included file "tda1.txt" or inserted below.
Once again just be sure the program window covers your 800 x 600Desktop completely without adjustment.This should work easily and be the case on Windows 9x.The program also works in XP (and probaly Win2000) but there you must be sure you have set your Windows desktop taskbar to "autohide".
I think..lol .. except: You get a icon that draws too big on the first edit. Just minimize the screen to a taskbar icon, then restore it and refresh it ..It is a strange "stack" error and I can't avoid it.I tried fixing it a dozen times!!also:
Also included is this file atmoslist.txt
Maybe by my description and such a long readme you might have the impression it is complex and difficult to use this program.But actually it is very simple. Thanks.. and GL !
RAF_Roy |