Looking Back on: Operation Flashpoint Cold War Crisis

GEC: Discuss gaming, computers and electronics and venture into the bizarre world of STGODs.

Moderator: Thanas

User avatar
Steel
Jedi Master
Posts: 1123
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Steel »

MKSheppard wrote:
Sarevok wrote: THEN we get into the nuts and gritty of actually plotting the battlefield. A 1 x 1 km battlefield done at 1m2 resolution would need a million datapoints; and if we want our battlefield to actually have a reasonable amount of elevation, that quickly bloats up the battlefield elevation file.
Now this I think they don't actually do in practice, seeing as the island files are in total much smaller than that in the original ofp. I think its also the reason there were never any caves or overhanging cliffs. The terrain height will be a function of x,y position (hence why no caves, as then there would be 2 'heights' at one point), and computed at some point to make the map at runtime. You could be right though and they make all that up and store it once the map is loaded.

It seems strange reading this that they didnt really learn anything from the fact that someone else went and did 2 gameplay beta versions in the meantime for them. Looks like they didnt have a clear idea of their ideal balance between sim and game either.
Apparently nobody can see you without a signature.
User avatar
MKSheppard
Ruthless Genocidal Warmonger
Ruthless Genocidal Warmonger
Posts: 29842
Joined: 2002-07-06 06:34pm

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by MKSheppard »

The terrain height will be a function of x,y position
That's exactly what I posited; a x,y heightmap, each with a single "word" for the height level.

I did some calculations, and if we wanted 1m2 datapoint accuracy on the game's 277~ km2 island with 14 bit words (allowing us 16,384~ possible height levels, remember the game engine has to take into account jet/helo combat for unit positioning); it would come out as 486.5~ MB of uncompressed data.

We could get around this by simply loading into memory a 30 km radius of terrain around the character (remember they have to take into account LOS from a helo or jet); and that's 95~ km2 of territory; or 166.2 MB of uncompressed data.

You could drop this by half to 85~ MB of memory by reducing datapoint density to 2m2; and simply smoothing the terrain mesh when it's rendered on screen.

50-80 MB of terrain height data on a system with only 256 MB of memory (remember they got to design it around the PS3 port, for various reasons); when you add in the overhead for the other subsystems, doesn't leave a lot of room in memory to keep track of independent entity states.

This really is why I am opposed to console-itis for anything more complex than a simple FPS shooter like Gears or Halo.
"If scientists and inventors who develop disease cures and useful technologies don't get lifetime royalties, I'd like to know what fucking rationale you have for some guy getting lifetime royalties for writing an episode of Full House." - Mike Wong

"The present air situation in the Pacific is entirely the result of fighting a fifth rate air power." - U.S. Navy Memo - 24 July 1944
User avatar
charlemagne
Jedi Knight
Posts: 924
Joined: 2008-10-13 02:28am
Location: Regensburg, Germany

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by charlemagne »

MKSheppard wrote:This really is why I am opposed to console-itis for anything more complex than a simple FPS shooter like Gears or Halo.
Well there might be something to it, but simple question, if it's really just memory limits on consoles - why not make unit density a variable and simply increase the number for the PC version?
Image
User avatar
Steel
Jedi Master
Posts: 1123
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Steel »

MKSheppard wrote:
The terrain height will be a function of x,y position
That's exactly what I posited; a x,y heightmap, each with a single "word" for the height level.

I did some calculations, and if we wanted 1m2 datapoint accuracy on the game's 277~ km2 island with 14 bit words (allowing us 16,384~ possible height levels, remember the game engine has to take into account jet/helo combat for unit positioning); it would come out as 486.5~ MB of uncompressed data.

We could get around this by simply loading into memory a 30 km radius of terrain around the character (remember they have to take into account LOS from a helo or jet); and that's 95~ km2 of territory; or 166.2 MB of uncompressed data.

You could drop this by half to 85~ MB of memory by reducing datapoint density to 2m2; and simply smoothing the terrain mesh when it's rendered on screen.

50-80 MB of terrain height data on a system with only 256 MB of memory (remember they got to design it around the PS3 port, for various reasons); when you add in the overhead for the other subsystems, doesn't leave a lot of room in memory to keep track of independent entity states.

This really is why I am opposed to console-itis for anything more complex than a simple FPS shooter like Gears or Halo.
Ah I meant function in the sense of given (x,y) there is a function f(x,y) = h, the height, so for example we can have a (crappy) hill that is represented by f=100-r2 where r2=x2+y2 for r<10 and 0 otherwise. This gives us a bump shape to arbitrary precision in a region.

Given that island maps in OFP are not even 10mb (~3 apparently) including all the crap thats on them, either the terrain grid is very very large or the entire terrain is stored as the Fast Fourier Transform coefficients (or some clever compsci thingy) of the actual height map and then rebuilt as needed. The extent to which the terrain actually exists at runtime is not a given. It is entirely plausible that they've found some way to get the thing to work without ever needing to know the heights except at a specific finite set of points, which can be calculated at runtime, moving the focus away from ram space and into the processor.

Its a bit strange the PS3 has such tiny ram. Is that really all it has? They could have put in 10x as much for like £5 more.
Apparently nobody can see you without a signature.
User avatar
Vendetta
Emperor's Hand
Posts: 10895
Joined: 2002-07-07 04:57pm
Location: Sheffield, UK

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Vendetta »

Steel wrote:Its a bit strange the PS3 has such tiny ram. Is that really all it has? They could have put in 10x as much for like £5 more.
Not at the time, and not RDRAM, which is what it uses.

It has a hard split of 256MB main RAM and 256MB VRAM.
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Stark »

MKSheppard wrote:This really is why I am opposed to console-itis for anything more complex than a simple FPS shooter like Gears or Halo.
This is the funniest statement ever. You make a number of outrageous statements and then declare 'console-itis' for 'simple FPS shooters' like Gears or Halo.

The idea that it's a major memory drain to track inventory is laughable. You know they're talking about millions of bytes, right? They're storing an array of flags, not fucking pictures of the guns. If they use standard loadouts (ps they do) you only need a reference byte or two. The idea you need to have an entire 1x1km map at 1m2 resolution in memory all the time is even better. I guess it's PS3's fault the PC version doesn't have 277km2 maps? :lol:

That said, I'm playing FarCry2 again on 360 (since I'm whoring for achievements and I played it on PC ages ago). It obviously looks worse, but it's arguable that the horrid guard post and random car spawning is due to memory limits imposed by console ports - the size of each cell (ps learn about streaming Shep) is quite small. The game doesn't deliberately respawn guard posts; but when you leave the area it totally forgets about it and loads it fresh later. This is just how the Dunia engine works (other console games can efficiently track this information, like most sandbox games and Fallout etc) but the way they keep the view distance and quality high is with small cells. I'm not sure it can really be blamed on consoles, because you'd expect it to be easily hacked out of the PC version.
User avatar
Pint0 Xtreme
Jedi Council Member
Posts: 2430
Joined: 2004-12-14 01:40am
Location: The City of Angels
Contact:

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Pint0 Xtreme »

Storing data of agents in the game isn't that big of a deal. It may seem like a lot of data but really, it's minuscule considering how little primitive data types consume in the system's memory. It probably has more to do with either AI, animations or rendering. Those take a toll on CPU cycles.
Image
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Stark »

The 63 entity limit is actually pretty strange, given it's such an odd and low number. The missions very clearly use a lot of spawning (and de-spawning corpses even).
User avatar
Pint0 Xtreme
Jedi Council Member
Posts: 2430
Joined: 2004-12-14 01:40am
Location: The City of Angels
Contact:

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Pint0 Xtreme »

Vehicle path finding AI is still horrible. And they've had YEARS to fix it! Is it really that difficult to develop proper path finding solutions? Maybe the scale of the map causes more problems than I'm familiar with. It could also be a rendering issue and the tracking of all the objects in the world. Why else would they de-spawn corpses? They don't do anything other than lie there. Or maybe their system of rendering dead agents are horribly inefficient. That just seems so unreasonable considering that they took so much time in smoothing out the rendering engine by even allocating proper use of multiple core machines.
Image
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Stark »

Oh yeah, in the first mission I tried commander a jeep. The driver did a 42 point turn to get around a single firepit. :)
User avatar
MKSheppard
Ruthless Genocidal Warmonger
Ruthless Genocidal Warmonger
Posts: 29842
Joined: 2002-07-06 06:34pm

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by MKSheppard »

Steel wrote:Given that island maps in OFP are not even 10mb (~3 apparently) including all the crap thats on them, either the terrain grid is very very large or the entire terrain is stored as the Fast Fourier Transform coefficients (or some clever compsci thingy) of the actual height map and then rebuilt as needed.
Or the maps could be compressed to save space.

GTOPO30 DEMs published by the USGS (5500 km high, 4,000 km wide and 1 km per datapoint) are 57 MB uncompressed; and about 13~ MB compressed. It all depends on how much "empty" space there is in the GTOPO30 map slice -- areas with oceans compress very well.

The problem is, for Operation Flashpoint's entire schtick -- showing a war occuring an an island 277~ km2; it needs to be able to show large portions of the island at any one time; and that means it's got to be loaded into memory.
"If scientists and inventors who develop disease cures and useful technologies don't get lifetime royalties, I'd like to know what fucking rationale you have for some guy getting lifetime royalties for writing an episode of Full House." - Mike Wong

"The present air situation in the Pacific is entirely the result of fighting a fifth rate air power." - U.S. Navy Memo - 24 July 1944
User avatar
MKSheppard
Ruthless Genocidal Warmonger
Ruthless Genocidal Warmonger
Posts: 29842
Joined: 2002-07-06 06:34pm

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by MKSheppard »

Stark wrote:This is the funniest statement ever. You make a number of outrageous statements and then declare 'console-itis' for 'simple FPS shooters' like Gears or Halo.
Translation: Waaaaah.

None of my statements are outrageous. Just simple math based around the area available to us in OFP2, and the kind of combat that's expected in the game. (primarily infantry, with a smattering of vehicle combat).
The idea that it's a major memory drain to track inventory is laughable. You know they're talking about millions of bytes, right? They're storing an array of flags, not fucking pictures of the guns. If they use standard loadouts (ps they do) you only need a reference byte or two.
A a double word inventory system like you posit works only for a simple FPS shooter like Halo or Gears where there just is:

"Rocket Trooper with 24 rounds of ammunition"
"Machinegun Trooper with 500 rounds of ammunition"

But for OFP, you need to track the person's inventory plus the state of that inventory; so you can't just walk over to a bunch of dead chinese marines after a firefight, and pick up for example 5 AKs, plus 30 x fully loaded clips, despite the chinese marines engaging in a gunbattle with you.

Individually, each entity's state would be smallish; a couple hundred kb at best; but the problem comes when you need large numbers of them running around at any one time; which is flashpoint's schtick; fairly large, open country infantry combat with AI that was a bit more advanced than your average FPS.
The idea you need to have an entire 1x1km map at 1m2 resolution in memory all the time is even better. I guess it's PS3's fault the PC version doesn't have 277km2 maps? :lol:

and

(ps learn about streaming Shep)

and

Turns out you can show a war in a large space without holding that ENTIRE SPACE IN MEMORY THE WHOLE TIME?
Translation: Waaah, I don't read things before going on straw-man filled rants. But since I'm so nice; I'll repeat it, with color emphasis:
I did some calculations, and if we wanted 1m2 datapoint accuracy on the game's 277~ km2 island with 14 bit words (allowing us 16,384~ possible height levels, remember the game engine has to take into account jet/helo combat for unit positioning); it would come out as 486.5~ MB of uncompressed data.

We could get around this by simply loading into memory a 30 km radius of terrain around the character (remember they have to take into account LOS from a helo or jet); and that's 95~ km2 of territory; or 166.2 MB of uncompressed data.

You could drop this by half to 85~ MB of memory by reducing datapoint density to 2m2; and simply smoothing the terrain mesh when it's rendered on screen.
"If scientists and inventors who develop disease cures and useful technologies don't get lifetime royalties, I'd like to know what fucking rationale you have for some guy getting lifetime royalties for writing an episode of Full House." - Mike Wong

"The present air situation in the Pacific is entirely the result of fighting a fifth rate air power." - U.S. Navy Memo - 24 July 1944
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Stark »

I'm glad actual software development isn't the way you think it is. :D Do you seriously think this is relevant? I mean for fuck's sake, the game is a squad level shooter. Why the fuck are we even talking about 277km2 maps? It's not relevant, and especially not relevant to the 63 entity limit.

I'm not seeing how 'couple of hundred kb' (which seems baseless and excessive to me) is relevant to the 63 entity limit, either. OFP2 can have terrible tradeoffs without any of this red herring shit being any more correct or relevant.

I mean, seriously, you act like you're super-smart for cracking the code on 'don't load the whole map' and 'only track relevant entities', while complaining the scope isn't large enough for... whatever the fuck you want. Next you'll discover LODding, and we'll be at 1997!
User avatar
MKSheppard
Ruthless Genocidal Warmonger
Ruthless Genocidal Warmonger
Posts: 29842
Joined: 2002-07-06 06:34pm

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by MKSheppard »

I mean for fuck's sake, the game is a squad level shooter.
Squad level shooters require a much higher level of detail in the map than an aircraft or vehicle shooter. And I notice you've completely left out the requirement for a long range FOV of the same level of detail due to helicopters flying around as player controlled vehcles or transports.
"If scientists and inventors who develop disease cures and useful technologies don't get lifetime royalties, I'd like to know what fucking rationale you have for some guy getting lifetime royalties for writing an episode of Full House." - Mike Wong

"The present air situation in the Pacific is entirely the result of fighting a fifth rate air power." - U.S. Navy Memo - 24 July 1944
User avatar
Stark
Emperor's Hand
Posts: 36169
Joined: 2002-07-03 09:56pm
Location: Brisbane, Australia

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Stark »

SO FUCKING WHAT? Demonstrate how your (hilarious) attempt to demonstrate basic mathematics is at all relevant to a) OFP2 having a ludicrously low entity limit or b) OMG TEH CONSLZ.

I hate to say this, because you honestly seem to think you're on the ball with game design, but long range things MIGHT involve LODding. Turns out AI pathfinding in the air doesn't require super-detailed heightmaps?

Actually, just to say 'fuck you're stupid' when I get home I'm going to take a screenshot of the LOD line in OFP2 (assuming I can find a convenient hill) and range it with the binos. That's not even going to be the 'real' first LOD line, because the first one (or two) will be such a tiny difference you'd never see it. A nice picture of a tesselated mountain should illustrate why you're an idiot.

The funniest part is your brain is so broken you can say 'ground stuff requires more detail hurf durf' AND 'omg choppers = giant radius' in the same post and think you're smart.
User avatar
Laughing Mechanicus
Jedi Knight
Posts: 721
Joined: 2002-09-21 11:46am
Location: United Kingdom

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Laughing Mechanicus »

Having played this a bit now, mostly in cooperative mode, I have some thoughts:

I haven't yet noticed any particularly egregious AI problems. The main difference in the AI from the original OFP (aside from being a different game by a different developer) is that the range of "lethal" engagements has been significantly reduced. Last night I played through some missions in original OFP just to remind myself, and the general experience of death in that is to be shot by someone from ~600m away with little warning that you are even in combat. Contrast that to OFP2 where an AI enemy will engage you at those ranges, but their fire will be vastly less likely to do more than cause the occasional wound to a squad member until you are at much closer range, maybe 200m - this makes the game both more forgiving and more a spectacle, with prolonged firefights common.

Now I'm sure someone will say "but 600m is the realistic effective range of aimed fire for assault rifles" which is true. However in the OFP missions where I was getting killed at 600m distances, all that happened was a) I was frustrated, b) I respawned lots and c) I ended up "winning" engagements by simply learning where the enemy was each time they killed me and then taking them out methodically from memory; hardly realistic. At least in OFP2 you have to think on your feet, and you actually get the chance to think on your feet.

Also, I have tried the game using a 360 controller and it is, in fact, better in every way except aiming. I am going to have a go at writing an auto-hotkey script which will imitate the functionality of the 360 controllers like hold-to-use command menu, single button stance control and ammo switches on the reload key for the PC version; it seems many people would find that useful.

Oh, and there are codes kicking about online which unlock about 6 "exclusive" new singleplayer missions if you enter them in the extras menu. Good if you need more coop material.
Indie game dev, my website: SlowBladeSystems. Twitter: @slowbladesys
Also officer of the Sunday Simmers, a Steam group for war game and simulation enthusiasts
User avatar
Zixinus
Emperor's Hand
Posts: 6663
Joined: 2007-06-19 12:48pm
Location: In Seth the Blitzspear
Contact:

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Zixinus »

Great to hear someone is trying Ash, I'll be glad to try your fix.

Now I'm sure someone will say "but 600m is the realistic effective range of aimed fire for assault rifles" which is true.
Nitpick: Actually, it isn't: its 300m and by that range, most people can barely even see the target.

Supposedly, an important aspect of real-life infantry warfare is not to get noticed while just walking about. This is not easy on OP-CWC.
Credo!
Chat with me on Skype if you want to talk about writing, ideas or if you want a test-reader! PM for address.
User avatar
Commander 598
Jedi Knight
Posts: 767
Joined: 2006-06-07 08:16pm
Location: Northern Louisiana Swamp
Contact:

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Commander 598 »

It was easy enough to go unnoticed. I practically had enemies walking/driving over me at times.

In OFP2 I've found myself taking fire from quite some distance away. It's mostly dependent on whether the enemy can see/find you. 300m is, IIRC, the "average" engagement distance for modern infantry, actual effectiveness of an assault rifle is massively variable and dependent on whether you can see and hit a target and IIRC, Marines still train at 500m. When you start sticking fancy thermal scopes and long range optics on your AR you probably blew past 300m of "effective range". As an example, I'm pretty sure Carlos Hathcock went over the "effective range" of an M2 HMG when he mounted a scope on one and used it for sniper work.
User avatar
Steel
Jedi Master
Posts: 1123
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Steel »

The 63 entity limit was in OFP1, although there it was present as a 63 SQUAD limit. 63 isnt strange because its 64-1.
Apparently nobody can see you without a signature.
User avatar
Vendetta
Emperor's Hand
Posts: 10895
Joined: 2002-07-07 04:57pm
Location: Sheffield, UK

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Vendetta »

Steel wrote:63 isnt strange because its 64-1.
It's still an utterly arbitrary number for a modern system to limit things to.
User avatar
Steel
Jedi Master
Posts: 1123
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Steel »

Vendetta wrote:
Steel wrote:63 isnt strange because its 64-1.
It's still an utterly arbitrary number for a modern system to limit things to.
Just because its been made made more recently doesn't change binary. If they're as strapped for resources as they seem to be then either they just didn't optimise anything or they had to squeeze as much out as they could and set up various bits at low level where things like that are relevant.
Apparently nobody can see you without a signature.
User avatar
Commander 598
Jedi Knight
Posts: 767
Joined: 2006-06-07 08:16pm
Location: Northern Louisiana Swamp
Contact:

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Commander 598 »

Steel wrote:The 63 entity limit was in OFP1, although there it was present as a 63 SQUAD limit. 63 isnt strange because its 64-1.
I thought it was like 40something. Anyway, it was indeed groups which included individual ungrouped infantry or a dozen men grouped together and didn't include empty objects.
User avatar
Steel
Jedi Master
Posts: 1123
Joined: 2005-12-09 03:49pm
Location: Cambridge

Re: Looking Back on: Operation Flashpoint Cold War Crisis

Post by Steel »

Commander 598 wrote:
Steel wrote:The 63 entity limit was in OFP1, although there it was present as a 63 SQUAD limit. 63 isnt strange because its 64-1.
I thought it was like 40something. Anyway, it was indeed groups which included individual ungrouped infantry or a dozen men grouped together and didn't include empty objects.
Nope, certainly 63 squads of up to 12 men. It didn't include vehicles, occupied or not. I'm unsure what the total entity limit was.

It was a limit of 63 squads per side as well. Interestingly it was a soft limit rather than a hardcoded limit, I managed to get around it in the past by saving a mission then opening the file and manually editing the entities. That said the game doesn't actually run too well with over 1000 men on the same side. Works fine (with a computer 8 years more advanced than when it was released) if you fill the 63 squads normally.

I made a huge coop mission where the entire island is filled with russian troops etc and you and a few friends can take the whole place. Its cool to have one guy on a tank several k back dropping indirect fire over a hill onto a town while someone else is ahead spotting. Even hitting the unit limit there it still ran fine a few years ago when I actually played the game.

It really cant be a proper limit given that flashpoint could have thousands of guys, ArmA and ArmA 2 were capable of having thousands with improved graphics. Holding data on the guys will take practically fuck all space and apparently they arent giving them particularly sophisticated AI...
Apparently nobody can see you without a signature.
Post Reply