Zyxpsilon Posted April 12, 2016 Share Posted April 12, 2016 As i am currently planning to add a number of new cities to the qUick_FLG mod, i detected a "flaw" in the rendering of various visual elements involved in the Avenger+Skyranger travelling steps and the opening cinematic sequence text displayed into the Info-boxes. These mostly occur for GuerillaOps missions that begin as "Region" choices while the animated process moves the two ships around. Soooo, i noticed something weird with an EastAfrica pick. Avenger travelled (correctly it seems) towards Northern Egypt, Skyranger went all the way to Saudi-Arabia (close to Riyadh) and the Splash picture location indicated "Slums District: Butcher's Station, Cairo".Fine, that's where the action is supposed to be!But why is the actual "Green Model Guerilla" standing in the Arabic peninsula rather than directly in Egypt near Cairo itself?! This may seem like nit-picking to some people but i'm a freak for precision & perfection. And if i must start working on the UC scripts (and INI settings + INT strings) to provide many new cities (( say 20-50+!! )) to my subscribers, i'd like to make sure the gameplay system is accurate enough. 1) Cairo (Egypt) parameters are defined in X2StrategyElement_DefaultCities.uc... static function X2DataTemplate CreateCairoTemplate() { local X2CityTemplate Template; `CREATE_X2TEMPLATE(class'X2CityTemplate', Template, 'Cairo'); Template.Location.x = 0.586; Template.Location.y = 0.340; return Template;** XY is basicly a 0-1000 points system where Northern Longitude (@DateLine) is Y(0,0)X, Equator latitude is Y(+500, 0)X. Whereas, the actual Latitudes can range from 0-to-2000 "pixels" in a 2x1 Mercator/Equirectangular projection. 2) The East Africa region also has indirect values listed in DefaultGameBoard.INI ... [WorldRegion_EastAF X2WorldRegionTemplate] LandingLocation=(X=0.535, Y=0.343, Z=0.0) Bounds=(fLeft=0.559, fTop=0.318, fRight=0.632, fBottom=0.408) LinkedRegions="WorldRegion_NorthAF" LinkedRegions="WorldRegion_EastEU" LinkedRegions="WorldRegion_SouthAF" LinkedRegions="WorldRegion_SouthAS" RegionMeshLocation=(X=0.5, Y=0.25, Z=0.0) RegionMeshScale = 1.5f RegionTexturePath = "Strat_Overworld_DataMaps.Textures.EastAF" Countries="Country_Egypt" Countries="Country_Israel" Countries="Country_Iran"** Bounds should be an "Area" limits where events & activitives (gameplay & visually) can take place, i'm guessing. 3) Soooooo... what's the point?! How can i make sure my custom XY definitions are all within a proper calibration system and if so, will the gameplay render anything correctly?? Secondly, is there a preset Array (X2DataTemplate.. US has 10, Brazil-6, etc) restriction on the amount of additional "Mission Locations" we can add?! If anyone has noticed some of the visual discrepencies for whatever Missions they went to, please confirm. I just don't want my newest "Havana, Cuba" destination process to end up in the "Bermuda triangle" wreck -- for example! ;) Link to comment Share on other sites More sharing options...
Zyxpsilon Posted April 14, 2016 Author Share Posted April 14, 2016 After more thorough verifications of trusted GIS online sites.. it's quite obvious to me now that the Strategy Layer engine is using a proper Miller Cylindrical projection to display everything on the Geoscape (Their own GlobalHoloWide texture is highly customized and seems to go through an extra re-scaling step at runtime too, btw). That puts the calculation principle for cities locations under a slightly different calibration process. X-Y being Width (WE-Longitude) & Height (NS-Latitude) respectively... to obtain valid decimal numbers (0-1000 but in a 2x1 ratio) from the usual WE/NS cardinal coordinates system, i have determined that these formulas would produce near enough results (translated from precise WikiPedia sources) which should also match with any of the Firaxis default values range. X == (180°-W) / 360° ..or.. (E+180°) / 360°Y == (90°-N) / 180° ..or.. (S+90°) / 180° Knowing this, i now intend to create one such city(es) for each of the default 36 remaining countries (Sweden:Stockholm, Italy:Rome, Spain:Madrid, etc) that weren't used by the game code itself.. and then, drill down my FP(#) files to find other worthy candidates (possibly Capitals) for inclusion. Should be fun! :) Link to comment Share on other sites More sharing options...
Dragon32 Posted April 14, 2016 Share Posted April 14, 2016 (edited) That sounds like my kind of mod :thumbsup: On the whole Cairo-in-Saudi Arabia thing, would that be something to alter as well or, after your investigations, do you think the game files have the correct co-ordinates and there's just a bit of haphazardness in the placement of the green soldier statue thing? Edited April 14, 2016 by Dragon32 Link to comment Share on other sites More sharing options...
Zyxpsilon Posted April 14, 2016 Author Share Posted April 14, 2016 (edited) From what i saw in the little code i could gain some fair understanding of, the generic system of determining how & where missions (mostly GuerillaOps in our case) are "dispatched" to the gameplay engine makes some indirect use of the coded (XY) values (of cities) --while-- sticking to a limited set of inherent boundaries related to the Region currently in context. In a word; DataBase. Soooo, when the events call for a new HUD display -- they just rely on a runtime array from which RNG factors allocate the next potential target(s). After that, it's just a matter of animating the Avenger/Skyranger paths towards the intended locations while preparing the Info strings shown on the Briefing screen. I also found that there is a protected "range" where the Region Bounds could enforce a weird visual error (Cairo/Saudi) that nearly randomize what is geographically inside the valid code limits. It's strange but at the same time makes sense since that prevents loopholes in things like big water bodies or biomes equations. I think there is another parameter at work... Slums/Districts/Outskirts can have an impact on the Geoscape drop-zone(s). It's complex but what is important to me is *IF* my custom locations will be processed correctly by the default code structure. I guess they will but i'll have to verify a few tricky spots through trial/error ingame. Here's an example of what i use to define the whole stuff in a Datasheet reference file; ---Races----UnitWeights-----------------------;NameLists;My_NL ;Cities(18);X ;Y ;(Wiki-Inverts the values!) ;(C-F-H-S); UW=??; IDs ;Languages ;arr(tags); ; ;LONG ;LAT ;(NS=Y ./. EW=X) ---------------------------------------------------- ... .. ;(0-0-0-1); UW=25; 006-Japan ;english ;Jp ; ;Tokyo (5);888 ;300 ;(35*41N_.68/139*41E_.68) ... .. ;(1-0-0-0); UW=9 ; 060-CzechR ;english ;Pl ;CzSv ;Prague ;540 ;222 ;(50°05N_.08/14°28E_.47) ... .. ;(1-0-0-0); UW=10; 064-Finland ;english ;Du ;FiIc ;Helsinki ;569 ;166 ;(60°10N_.17/24°56E_.93)Yet to calculate Prague's XY .. and i'll need to design a new Name-List for the CZechs to replace the temporary (Pl) "Polish" i used for the initial FP2 mod release. PS-EDIT; There -- all aligned into proper Code formatting + Finland! :D :ninja: Edited April 15, 2016 by Zyxpsilon Link to comment Share on other sites More sharing options...
Dragon32 Posted April 14, 2016 Share Posted April 14, 2016 (edited) Interesting, thanks for taking the time to post such a detailed reply. Not sure if you tried it but using Code tags can help with that kind of copy & paste. [code][/code]Although, IIRC, with this board software tabs get converted to a single space and it can get hard to present information clearly. [Edit: Um. You've made ~2K posts here so you probably know that...] Edited April 14, 2016 by Dragon32 Link to comment Share on other sites More sharing options...
davidlallen Posted April 16, 2016 Share Posted April 16, 2016 Hot off the presses:https://steamcommunity.com/sharedfiles/filedetails/?id=666382532 Link to comment Share on other sites More sharing options...
Dragon32 Posted April 16, 2016 Share Posted April 16, 2016 Thanks for the headsup on that one, davidlallen Link to comment Share on other sites More sharing options...
Zyxpsilon Posted April 16, 2016 Author Share Posted April 16, 2016 Yup.. noticed it too this morning when i logged onto the Steam-Workshop! Really feels like my stuff will no longer be needed -- i was about half-way through my "shortened list" (RealityMachina's has 142) of nearly 100 but i doubt (not sure yet) i should continue this whole project. One thing is certain -- he/she is developping much faster than i do!! :D I just hope that new mod has somehow fixed (too) the coordinates used by LW though since the EquiRectangular/Miller hybrid scalings must be slightly fiddled with above(N) & below(S) the 40° Latitudes for the Geoscape to display relatively correct Avenger/Skyranger drop-zones & any remote geographical locations. Oh well -- most of us would see soon enough i guess. I also don't think it included rare gimmicks like mine -- Nuuk (Greenland), Antarctica (South Pole) for example. Maybe i shouldn't write too much. ;) :laugh: Link to comment Share on other sites More sharing options...
davidlallen Posted April 16, 2016 Share Posted April 16, 2016 I'm sure the author will take suggestions for improvements on steam/reddit. Link to comment Share on other sites More sharing options...
Zyxpsilon Posted April 16, 2016 Author Share Posted April 16, 2016 Well... i think i spoke a little too soon about quitting on my own version. That new mod does a fair enough gathering of some cities but it is still very far from my intended concept principles. After examining its content, i was stunned to find out it adds many cities (true) but not exactly in what i think might be called "optimal worldwide variety". For example.. you'll have 14 more USA-Cities while Vanilla already gave us 10. It focuses on the default countries (by supplying about 5-8 cities for each) while supplying 8 to every other "Continents" . My approach takes a different perspective as it will dispatch MUCH more limited quantities but all are distributed over vastly wider & diverse areas of the planet. From FP2 to FP5, i might add. Soooooo -- in conclusion, i think i should continue work on my gimmicky principles. Just for kicks.. and my precious (but still somehow rare) subscribers. :geek: Link to comment Share on other sites More sharing options...
Recommended Posts