Topic: Hex Editing of Starfleet executables  (Read 204586 times)

0 Members and 1 Guest are viewing this topic.

Offline TAnimaL

  • Lt.
  • *
  • Posts: 772
  • Gender: Male
    • Combat Logs from the Cold Depths of Space
Re: Hex Editing of Starfleet executables
« Reply #500 on: December 10, 2015, 08:08:22 pm »
actually, SFB has an optional rules for hidden movement which is exactly like that, and my playgroup always used this option. You had almost no idea where the cloaked ship was; twice a turn (at fixed intervals) you could ask which shield of A ship was facing the cloaked ship, and maybe you could triangulate roughly where it was, and sometimes you knew what speed it as going, at least when it cloaked. Could be a tense few turns, let me tell you.

Offline EschelonOfJudgemnt

  • Lt. Junior Grade
  • *
  • Posts: 259
Re: Hex Editing of Starfleet executables
« Reply #501 on: December 10, 2015, 10:37:13 pm »
Another of the optional cloak rules allowed the cloaked player to shift the location of their counter a number of hexes away from it's actual position.

And I don't have my rules handy now, but I seem to remember an option that allowed the cloaked ship counter to be removed if the lockon roll failed by a certain amount.  Accomplishing this using the tacintel rules (as previously suggested applying a divisor to the detection ranges while cloaked) would be nice.  Not sure if that's within our reach here though, but if someone figures something out that'd be cool.

This would add a new dynamic for probes.  Similar to firing probes off to detect a ship/fleet that is say over 100 hexes away, players might want to fire off probes to find traces of that cloaked ship that might be only 20 'hexes' away... 

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Invisible Cloak
« Reply #502 on: December 11, 2015, 11:37:49 am »
In default CE, the effective range to a cloaked ship is (true range * 2) + 5. I don't know if tactical intelligence uses the true range or the effective range. I have a hunch it might use the effective range, which would properly account for sensor and scanner damage.

Let's say a Fed-CA is fighting an invisible War Eagle at a true range of 15.0k. The F-CA will have an effective targeting range of no less than 35.0k to the Romulan ship. (It could be 44.0k with severe scanner damage.) If the 3-D model (and the off-screen tag?) can be made to disappear at 35.0k then the War Eagle could wait for an opportunity to uncloak at range 20.0k, dump an overloaded Plasma-R, and recloak forever against plasmaphobes. The Fed-CA can, however, choose to be struck by this torpedo (suffering minor damage, if any) and then efficiently pound the War Eagle with Phaser-1's and T-bombs the next few turns...

In Orion Pirates, invisibility would be another perk for an already extra-effective cloak (via the misery chart which is applied to attenuated damage). Fighting against Romulans might be no fun, unless there is a BPV adjustment.

All worth testing, if the tactical intel brackets are found, isolated, and customized in the executable.

Did a few tests... The most serious problem is that the camera (F5) has a flawless memory. If a ship that you've locked the camera onto goes out of sensor range, you can still see its location  (of course without a 3D model). So it appears access to the source code is needed to make the camera forgetful. Learned that shuttles count as ships as far as tactical intel.

The standard brackets for tactical intel are:
Ship's name ("Enterprise") level = 0.0k to 4.0k
Ship's designation (F-CA) level = 4.1k to 30.0k
Ship's hull (Heavy Cruiser) level = 30.1k to 100.0k
No information level = 100.1k+

As Corbomite pointed out a couple years ago, the Fleet Control Overlay removes all surprises, unfortunately. 
« Last Edit: December 11, 2015, 01:59:59 pm by TarMinyatur »

Offline Corbomite

  • Commander
  • *
  • Posts: 2939
Re: Invisible Cloak
« Reply #503 on: December 11, 2015, 04:20:37 pm »
As Corbomite pointed out a couple years ago, the Fleet Control Overlay removes all surprises, unfortunately.

So do the screen edge tags, mostly.

I still think the cloak should work the way I outlined awhile back. I'll see if I can find the post.


It was easier than I thought:

Quote
Cloak Improved: I feel the Cloak is excellent as it is right now (OP cloak)... with a few small tweaks needed. If you press F9, all screen information indicators disappear, including the shield graphics. If you do this while targeting a cloaked ship, they turn nearly invisible to the naked eye (you can barely see them if one of the space backgrounds is behind them). They can still be seen on the Tactical MFD as a moving ship icon. This is very close to a SFB cloak and practically mimics the TOS episode Balance of Terror. You know the general direction and distance and that's about it. I would like to see those effects incorporated so the cloak works like this: When the ship cloaks the Targeting Reticle and shield graphics disappear for all units to the cloaking unit. The ship is still "targeted" by the motion sensors so the screen should still follow the ship like it was tracking normally, just with no Targeting Reticle and, of course, no lock on. The follow command, orbit command and ID Tag must be disabled so a tracking ship just can't simply follow them around. You get the general direction from the viewer telling you something is there, but you have to follow it manually using the Tactical MFD and your hunch as to just how fast they are going. I would also add that if a cloaked ship stops dead all tracking systems, including the icon on the Tactical MFD, be disabled. It disappears until it moves again or is voided in some other way (mine, black hole movement, shuttle launch). I know the cloak got better over time to be basically undetectable, but trust me, sub hunter is much more fun!  ;)


There was a ton of other good stuff in that post.

Offline TAnimaL

  • Lt.
  • *
  • Posts: 772
  • Gender: Male
    • Combat Logs from the Cold Depths of Space
Re: Hex Editing of Starfleet executables
« Reply #504 on: December 12, 2015, 03:17:45 pm »
I believe what Adam was asking about and what i was referring to with hidden movement cloak is the complete vanishing of the cloaker, not just resorting to F9 toggling and a barely visible 3D model, and from the sounds of it, this is not possible, especially with the Tactical Map.

 Tar, just for clarity here, when you mention the "misery chart," do you mean how damage against a cloaked is penalized when it does hit (100%, 50%, 25%, 0% effectively)? This is standard in SFB; is it not in EAW/CE? Are there TacIntel range brackets in the exe that can be edited via hex edt? That could be an interesting variant to play around with too.

Offline Corbomite

  • Commander
  • *
  • Posts: 2939
Re: Hex Editing of Starfleet executables
« Reply #505 on: December 12, 2015, 04:13:04 pm »
That's not what the post is saying. I was giving people a way of seeing what it might be like with hidden movement. If you actually read the post I spell out just what needs to be done to make it work pretty much like it did originally in TOS, which I think is better for a game. A TNG cloak would be boring/frustrating for the hunting party.

And no, EAW/CE does not have the reduced damage chart in effect for the cloak, but OP does.

Offline TAnimaL

  • Lt.
  • *
  • Posts: 772
  • Gender: Male
    • Combat Logs from the Cold Depths of Space
Re: Hex Editing of Starfleet executables
« Reply #506 on: December 12, 2015, 06:05:39 pm »
Gee, Corb, maybe you should lay off the caffeine late in the day. I read what your post said but what Adam said was, and I quote, "you could have a sporadic blip on the tactical map but on screen in front of you it should be completely gone," which is what I said Hidden Movement is in SFB, and since this is a thread on hex editing, maybe we were just hoping to talk about if that's possible. For me, toggling F9, which affects HUD for EVERY ship, doesn't cut it, especially when pressing "y" for "target enemy ships" will find the cloaker. Whatever you outlined is not an actually in the game, you do realize that, right? That's what we're talking about, what could be done to make it that way, not just turing off screen info.

I also think you need a remedial viewing of "Balance of Terror." The Warbird disappears completely, no "visible distortion" like you see in ST movies, or the shadow model we get in SFC. And in the other TOS appearances of cloaked ships, there wasn't even a hint of the motion blip as in BoT.

Offline Corbomite

  • Commander
  • *
  • Posts: 2939
Re: Hex Editing of Starfleet executables
« Reply #507 on: December 12, 2015, 06:10:26 pm »
I don't drink caffeine and you are completely misunderstanding what I was getting at, but no matter, sorry I brought it up.

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #508 on: December 13, 2015, 02:07:48 pm »
Quote from: TAnimaL
Tar, just for clarity here, when you mention the "misery chart," do you mean how damage against a cloaked is penalized when it does hit (100%, 50%, 25%, 0% effectively)? This is standard in SFB; is it not in EAW/CE? Are there TacIntel range brackets in the exe that can be edited via hex edt? That could be an interesting variant to play around with too.
Let's say a K-D6 is hunting an O-DBR that is fully cloaked.

A Disruptor fired at a true range of 0.0k has an effective range of: 0*2 + 5 = 5. It properly uses the effective range for accuracy (67%).
Let's say it hits the O-DBR. The damage, however, is incorrectly based on effective range, not true range because Disruptors, Hellbores, Particle Cannons, Web Fists, Plasma Bolts, and Photons* are supposed to use the true range for damage calculations. {*Photons are weird in that they don't degrade.} So that K-D6's Disruptor does 3 points max instead of 5 max. But EAW and CE do not have OP's "misery chart". So the effective range "penalty" in EAW/CE actually approximates SFB's misery chart!

SFB
33% do  5
33% do 2.5 -> 2
33% do 1.25 -> 1
Avg Dam through chart = 2.67
Avg Dam per Disruptor attack = 1.78

EAW/CE
100% do 3
Avg Dam per Disruptor attack = 2

OP
33% do 3
33% do 1.5 -> 1
33% do 0.75 -> 0
Avg Dam through chart = 1.33
Avg Dam per Disruptor attack = 0.89

Haven't yet found the intel brackets. But they should be easy to find if they are typical "range x10" floats. I did look for a 1001.0f, but didn't find any. Could be one of the 1000.0f variables instead.

Quote from: Corbomite
The follow command, orbit command and ID Tag must be disabled so a tracking ship just can't simply follow them around. You get the general direction from the viewer telling you something is there, but you have to follow it manually using the Tactical MFD and your hunch as to just how fast they are going.

Sounds good. However, the camera needs to erase its memory of hotkey-assigned (5,6,7,8) targets and the current target if any of them cloaks. Because the camera doesn't forget, you will always know, within a few degrees, which way to go to always find the cloaker. In SFB, you would know a 60 degree arc. (With two ships you could narrow that down considerably.) We need source code to do invisible cloak properly. I see no way to accomplish this with HexEdit because of the complexity of targeting.
« Last Edit: December 13, 2015, 02:26:59 pm by TarMinyatur »

Offline Corbomite

  • Commander
  • *
  • Posts: 2939
Re: Hex Editing of Starfleet executables
« Reply #509 on: December 13, 2015, 03:04:26 pm »
Quote from: Corbomite
The follow command, orbit command and ID Tag must be disabled so a tracking ship just can't simply follow them around. You get the general direction from the viewer telling you something is there, but you have to follow it manually using the Tactical MFD and your hunch as to just how fast they are going.

Sounds good. However, the camera needs to erase its memory of hotkey-assigned (5,6,7,8) targets and the current target if any of them cloaks. Because the camera doesn't forget, you will always know, within a few degrees, which way to go to always find the cloaker. In SFB, you would know a 60 degree arc. (With two ships you could narrow that down considerably.) We need source code to do invisible cloak properly. I see no way to accomplish this with HexEdit because of the complexity of targeting.


Well, if you don't want the viewer to show direction at all then you would need to have the game automatically use Deselect Target when a ship cloaks (probably not too hard to do) as well as having the equivalent of F5 view toggle in, but only for the cloaked unit. That could get problematic with several units onscreen at once.

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #510 on: December 14, 2015, 11:59:47 am »
Deselecting a target does not fool the camera, unfortunately. It will still follow the previously targeted unit. The camera needs to be "tricked". One way to do this is to have ships automatically target themselves when their current target cloaks. Any hotkey-assigned targets would then only work if isTargetCloaked() == false.

Offline RazalYllib

  • Imperial Romulan Information Service-senior advisor
  • Lt.
  • *
  • Posts: 784
  • Gender: Male
    • IRIS
Re: Hex Editing of Starfleet executables
« Reply #511 on: December 14, 2015, 07:27:41 pm »
Could the camera target lock function be removed entirely?

If it isnt there, it does not need to forget.

Comes a time when the blind man takes your hand
Says "don't you see?"
Gotta make it somehow
On the dreams you still believe
Don't give it up
You got an empty cup
Only love can fill
Only love can fill

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #512 on: December 15, 2015, 08:56:22 am »
I believe target lock (F5) can be disabled via HexEdit. However, this would be a serious sacrifice. I greatly prefer the smoothness of F5-enabled views over the jerkiness of those without it.

if (isTargetCloaked) {
   setTargetLock(off);
   setHUD_InfoLevel(F9);
   setFollowStatus(off);
   setOrbitStatus(off);
}

Not so easy to do with a HexEditor. Might be able to do this in a minute with C++ source code.

Edit: The above logic is insufficient. Nearly invisible ships would need to have their mini-map icon, shield graphics, HUD speed, and HUD range removed from the perspective of all non-allied units. Otherwise, if I target a Romulan War Eagle's ally, a Klingon D7 for example, I'll see the R-WE whether it cloaks or not.
« Last Edit: December 16, 2015, 05:00:02 pm by TarMinyatur »

Offline TAnimaL

  • Lt.
  • *
  • Posts: 772
  • Gender: Male
    • Combat Logs from the Cold Depths of Space
Re: Hex Editing of Starfleet executables
« Reply #513 on: December 15, 2015, 03:23:19 pm »
Tar, thank you for the overly-explicit example but you didn't really answer my question - what is the the OP misery chart? Is it just the SFB G13.37 Adjustment chart (being applied without correcting for true range instead of effective), that is, a 1/3 chance of 100% damage, 1/3 chance of 50%, a 1/3 chance of 25%? And more importantly, is it in the exe somewhere? I think I remember in my notes a string I found of 1.0, .75, .5, .25 but I suppose that could be anything. 

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #514 on: December 16, 2015, 04:50:34 pm »
Yeah, TAnimaL, the "misery chart" in OP is the SFB cloak's effect on damage chart. Such that a Photon Torpedo, for example, that strikes a cloaked ship has a 33% chance of doing 8 points, a 33% chance of doing 4 points, and a 33% chance of doing 2 points.

This is located in the StarfleetOP.exe. And it is adjustable via HexEdit. I don't have my computer with me right now.

Here's what I wrote a while ago: "Found the function in OP today. Hidden in plain sight. Its associated string is tCloakSystem::mDetermineCloakSeekingWeaponDamageModifier"

So we could do 1.0, 0.5, 0.4 to weaken the cloak in OP slightly, for example. A Phaser-1 that hits for 5 would have equal probabilities of doing 5, 2, or 2 accounting for rounding (instead of the defaults of 5, 2, or 1 point).

Offline TAnimaL

  • Lt.
  • *
  • Posts: 772
  • Gender: Male
    • Combat Logs from the Cold Depths of Space
Re: Hex Editing of Starfleet executables
« Reply #515 on: December 17, 2015, 12:54:02 pm »
When you find your notes, what's the offset for that? (I'm still not up to speed on Ida) I could run a few tests.

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #516 on: December 18, 2015, 01:25:21 pm »
Unfortunately, the variables that modify the damage are shared. The 0.25f (1/4 damage) is used by 169 operations. You cannot safely modify it. The 0.5f modifier is used by 268 operations. Only one is the right operation. You can, however, create and link a new variable that only affects the cloak's misery chart.
 
IDA is essential to precisely hack the non-immediate values in the StarfleetOP.exe.

Here's a screenshot of the relevant function. I've renamed the variables to make them easily readable. The float in the red box is for 1/4 damage vs cloak.

Offline TarMinyatur

  • Lt.
  • *
  • Posts: 938
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #517 on: January 07, 2016, 12:10:08 pm »
I found the floats (aka decimal numbers) that define weapon arcs in Starfleet2CE.exe. Each arc descriptor (FA, FH, FX, etc.) is associated with 3 (or 4) floats. The first float determines the beginning of the arc in positive degrees from the ship's centerline. So "FA" begins at 60.0f. The 2nd float determines the end of the arc measured counter-clockwise. So "FA" ends at 300.0f. The 3rd float is mysterious if it's not followed by a fourth float. It doesn't seem to be meaningful unless the 4th float is present. Arcs like KFX, FARA, RW, LW, etc. have two sets of floats because these arcs are complex and non-continuous. So the bulk of "KFX" starts at 120.0f and ends at 240.0f, then the narrow aft arc begins at 190.0f and ends at 170.0f.

I fixed the SFBR, SFBL, RRP, and RLP arcs that were borrowed from Orion Pirates. The programmers probably measured clockwise instead of counter-clockwise, which is understandable and natural. CE's sprites.q3 doesn't accurately draw OP's additional arcs, but it draws something anyway, which we might be able to adjust with the Sprites_Editor.

Customizing these arcs is possible, but almost every referenced variable is shared with other functions. Free space for segregation is abundant, but it is a tedious process. If arcs desperately needed modification, I'd add the new variables. But SFC already has lots of arcs that seem to do the job quite well.

I searched StarfleetOP.exe for 4 hours. It does not use a similar arc definition. I thought 355.0f (the beginning of the "MLR" arc) would lead me to the right function. Nope.   
« Last Edit: January 07, 2016, 01:09:37 pm by TarMinyatur »

Offline d4v1ks

  • D.Net VIP
  • Lt.
  • *
  • Posts: 788
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #518 on: January 07, 2016, 12:38:02 pm »
That is very cool Tar.
Thanks for fixing that weapon arcs, and redirecting that dead gamespy link to evolve.
« Last Edit: January 07, 2016, 02:00:16 pm by d4v1ks »
"But he isn't wearing anything at all!" (The Emperor's New Clothes)

Offline d4v1ks

  • D.Net VIP
  • Lt.
  • *
  • Posts: 788
  • Gender: Male
Re: Hex Editing of Starfleet executables
« Reply #519 on: January 11, 2016, 01:29:01 pm »
(removed)
« Last Edit: January 14, 2016, 09:09:48 pm by d4v1ks »
"But he isn't wearing anything at all!" (The Emperor's New Clothes)