![]() |
SUBSIM: The Web's #1 resource for all submarine & naval simulations since 1997 |
![]() |
#16 | |
Grey Wolf
![]() Join Date: Jul 2006
Location: Germany
Posts: 902
Downloads: 10
Uploads: 1
|
![]()
Moin,
Quote:
Regards, DD
__________________
|
|
![]() |
![]() |
![]() |
#17 | |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]() Quote:
|
|
![]() |
![]() |
#18 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Skywas, if you still visit the forums nowdays, did you ever get round to releasing a tutorial on the use of StateMachineClass/Ctl.?
It appears to be able to detect the hull integrity of the uboats via Data/Library/GraphHitPointsAll.Dat. and generate effects/actions. I was wondering if it could be used to detect the condition of a ship, for instance when it's classed as sunk, and trigger the flooding of zones to make the ship actually sink, in the event that the ship doesn't do so of it's own accord? If so it could solve the problem of ships being sunk (technically but not actually), reappearing sometime later to be sunk again, but awarding the player no renown because the game considers it already sunk. |
![]() |
![]() |
#19 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Hi Anvart,
i was talking about the condition that sometimes happens when a ship is classed as sunk, but doesn't actually sink. I think it's due to the ship being classed as sunk by destroying critical areas like the keel, engines, fuel or ammo bunkers, but the damage done is not enough to drag the boat under the water, so it sits on the surface. In that instance the ship is re-rendered when you go out of visual range, and resumes the course the original ship was on. Happens to me about every 2nd sinking with the Repulse. I noticed that the GraphHitPointsAll file in the library folder, detects the condition of the hull of a uboat, and triggers actions and effects as a result of hull integrity states. So i wondered if a similar routine could be made to flood ship zones on a timer delay, on condition that a ship is classed as sunk, but doesn't go down of it's own accord within say 20-30 mins. I presume the interiors are zoned areas? Can the interior be flooded even if it's not recieved any damage? |
![]() |
![]() |
#20 | |||
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]() Quote:
Quote:
Unless you mean this? Quote:
![]() Btw, your English is much better than my Russian ![]() |
|||
![]() |
![]() |
#21 | |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]() Quote:
I plead innocence your honour, honest guv ![]() Similar problems? Were they related to using the StateMachine controllers to make ships sink? Or perhaps from people who also had ships that didn't sink? Or neither of the above maybe? |
|
![]() |
![]() |
#22 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Ok Anvart
![]() I'll play with it when i get time. I might be able to use the floodfB and floodbB zones to get round it ( and might be able to use them as longitudinal armour as well ![]() Not even sure yet how the floodf's and b's work exactly, but they seem to sink the boat, unless it's coincidence. But i want to keep the zone count down. Thanks for the info anyways ![]() Edit: Anyone happen to know if there's an importable (single) model of the Seahawk available anywhere for the Iowa? Doesn't seem to be in the Air folder or CV_Airplanes file. Last edited by roadhogg; 06-28-10 at 06:17 PM. |
![]() |
![]() |
#23 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Here's some info for you.
Ref sent this to me along time ago. Maybe it will help you now. http://www.mediafire.com/?mngjwmymjy1 |
![]() |
![]() |
#24 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Six months or so ago some of the info in that document would have come in handy, but at least theres some basic info out there now for anyone else who may be thinking of experimenting with zones and/or spheres.
So on behalf of who ever those people may be, thanks for releasing it. |
![]() |
![]() |
#25 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Anvart,
friend . . . buddy . . . (have i grovelled enough yet? ![]() since you seem to have a working knowledge of how the StateMachineClass controllers work, is it possible you could give me a brief outline of the formation structure of these controllers? For instance, where the entry names and expressions that the entries in the controllers refer to, are located? I imagine that these entry descriptions/expressions must be set somewhere, so that the controller recognises the entry, such as "State_Damaged70", and the expressions, such as "HullIntegrity" & "TimerElapsed", plus the check types "1000", and the GotoEntry numerical routines. As if that's not enough to be going on with, would you also happen to know how the red map icon, and the "She's going down" message are generated when a ship is classed as sunk, how the game knows when a ships hitpoints have expired (the hitpoint counter) and where i can find their triggers? Even if i can get the SMC controller to work with non human controlled ships, i have to be able to initiate expressions and actions that the controller will associate with these triggers before i have any hope of making it work. Any info would be appreciated ![]() |
![]() |
![]() |
#26 | ||
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]() Quote:
![]() I thought that the condition and expression names in the SMC had to be "set" in another file before the SMC would recognise it, but having looked at it again it seems they are "set" locally, ie: condition [0] = HullIntegrity Type = 1000 Expression = HullIntegrity ( Condition "HullIntegrity" now recognised as check type 1000 ( whatever, and wherever that is). Also the State entry names and actions are set locally too. But i'm still wondering by what means the game calculates the expired or remaining hitpoints a ship has, against it's hitpoint rating. And by what means it generates the broken red ship icon on the map, or generates the "She's going down" message ( not the appearance of the message, but when to generate it). I do understand this: Quote:
![]() Nothing ventured nothing gained, as they say. Apologies if i'm causing you headaches. Anyone here speak Russian? ![]() |
||
![]() |
![]() |
#27 | |||||
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]() Quote:
Quote:
S3D provides the interface, courtesy, as we all know, of skywasjer. ![]() Quote:
I also refer you to any of the StateMachineClass "Graph" files in SH3's Library. Click on the first node, read the (type) number in the top right hand section. It's type 10, and the name for type 10. . . is controller. Quote:
Quote:
Some of the generally accepted names are. . . routine, sub-routine, method, function, procedure. These names describe a section, or chunk, of program code, written to fulfill a specific function (or functions) within a program. Where the procedure ( or any of the above descriptions ) is relatively simple, preferably uses the same values, and outputs the same result each time, the procedure may be replaced or substituted by a Macro instruction/procedure. If you are confused by the dual use of the word "Function", it is simply that a procedure fulfils a function ( or functions ), but a procedure can also be CALLED a function, and a procedure can also CALL a function, which is another procedure. I understand that your knowledge of English is limited, but as a second language, it's more advanced than my second language, so congratulations. But if i understand you correctly, you are in fact calling a procedure. . . a controller. If a program is written well, and structured to be easily editable by someone unfamiliar with that particular program, each procedure ( or function ) will be preceeded by explanatory notes written by the original programmer, and headed. The heading for the programmer's notes describing the StateMachineClass code, may well "name" the procedure "StateMachineClassController", or something similar, but these notes, including the heading will be enclosed within parenthesis, so the program doesn't attempt to read it as part of the code, and crash. I don't know where you got the name controller for the hard code, because i haven't seen the hard code, nor should i, and therefore nor do i want to. On the subject of code, i have tried to put an IF, THEN, ELSE condition in the parameters of a zone in the Zones.cfg, just on the off chance that the fields would act on it, but it became obvious that the Zones.cfg just consisted of alphabetical fields for the zone descriptions, and numeric fields for the parameters. But then hell, without seeing the hard code, i wouldn't know till i tried. Come to think of it, the effects parameters reads alpha and numerics, so i'll try that later, just in case. It'll never work i know, but then, as i said i won't know till i try. If the effects fields will understand an IF, THEN, ELSE as actions, it could be as simple as: IF ShipDamageState=State_Dead . . . (send it off to the SMC controller to check conditions) THEN FloodingTime=1800 . . . . . . . . . (slowly flood undamaged zones of dead boat) ELSE FloodingTime=650 . . . . . . . . . . (normal flood time if ship not dead but zone damaged.) Now that sounds mad, and linking it all together reliably is not gonna be that simple, but all i need is for SH3 to understand that statement in some form, wherever i can get it to understand it, (even if it's nowhere near the zones.cfg), linked to the conditions and/or a timer, which will flood previously undamaged zones on a dead boat . . . and job done. A tall order maybe, but has anybody tried? But i digress... Anvart,i've written the above descriptions for program code so that next time you want to explain what a procedure is to someone, you'll know what to call it. Unfortunately i at least hope, that what i've written is of more assistance to you, than you've been to me. Maybe in six months or so, after i've cracked it, you might see fit to throw me a relevant crumb. Of course if i DO find a solution to the sinking problem, obviously you won't want it. Fair do's. Last edited by roadhogg; 07-06-10 at 01:56 PM. |
|||||
![]() |
![]() |
#28 |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
Mate,
Anvart is not being rude or with holding anything. I myself had a hard time understanding him at first. So I know your frustration. What he is telling you is quit simple. The State Machine Controller is Hard Coded to ONLY work for Player Subs. Take a Stock in Game sub and assign it as an AI Sub in a test mission. Does it use the State Machine stuff? (Which is all there!) NO! And it never will unless you Hack the basic code. (Big NO NO!) Or create a DLL intercept. (That's allowed to an extent not limited yet.) Regards, Privateer |
![]() |
![]() |
#29 | |
Stowaway
Posts: n/a
Downloads:
Uploads:
|
![]()
I assumed that Anvart may be trying to tell me that the SMC was hard coded for only player subs and ships, but that's not what i got, and assumptions, when you're looking for hard facts, are useless.
IIRC leaves the possibility that he may NOT recall correctly, which throws in to doubt the rest of his statement. Quote:
have you tried using it to cause the sinking of supposedly sunk ships? . . .No indication given. I'm afraid i was left with nothing i could call constructive or definitive information. If he wants to withold any information, he's perfectly entitled to. I have no problems with it. But i was surprised, disapointed, and none too pleased with what looked like the derisory phrasing of those comments, not least because Anvart has never struck me as someone prone to that type of behaviour before. That said, i am also aware of Anvart's difficulty with English, but wasn't aware of perhaps HOW MUCH difficulty he has with it. Anvart, if you read this, please accept my unreserved, and most humble apologies for my misunderstanding ( mistake ) . . .good sir. ![]() ![]() ![]() Regards the SMC, sometimes the best way from A to B, is via a stop off at C, so the SMC possibilities are not over yet. I've only just scratched the surface on SMC's and the sinking issue. But this garaunteed sinking problem has become the key to everything i've been working on during the last 6-9 months. The fact that it already exists in SH3/GWX is no excuse, i have to find a solution, or it's not good enough. What has become clear, is that as usual, i'm on my own with it. ![]() Editing hardcode . . .as you say, big no no. Dll intercept's . . . apparently manifests are more reliable than dot.local's, but Vista is supposed to have restrictions on known DLL's ( of which kernel.dll is one ) which don't necessarily work ( the O/S tends to allow none or all ) . Don't know about Windows 7. These abilities may be restricted by future updates on any or all O/S's, so don't represent a favoured stable solution. But thanks. And Anvart, sorry if i've hijacked your thread. My questions were only meant to be quickies ![]() |
|
![]() |
![]() |
#30 |
Admiral
![]() Join Date: Jan 2006
Location: Russia ®
Posts: 2,492
Downloads: 122
Uploads: 1
|
![]()
Thanks, Privateer.
... And i will repeat... i will not discuss questions of cracking-hacking of game and of injections of ex. code... ![]()
__________________
Alex ® ![]() Moses said: "Don't create yourself an idol"... Last edited by Anvart; 10-28-13 at 04:02 AM. |
![]() |
![]() |
![]() |
|
|