LiQuiD911 Posted September 8, 2014 Share Posted September 8, 2014 (edited) YAY! How come nobody saw this before?! Streams are configured in DefaultMaps, I can make 4 extra streams, make 4 entries of the same map but with different stream in defaultmaps. Each stream has different start points and extraction. And there you go - maps with multiple starting points. For now the only problem is that i cannot remove the original extraction zone,but i can hide it off the map, however i think extraction missions would zoom at it. I think we could add extraction/rescue/capture and hold on any map. A setback is that these count as different maps and the mapcycler could extract the same map base 2 times in a row. wghost, yeah REPLACE_ALL should be fine.. actualy it's not so urgent, i wanted a command like that because i was too lazy to change the local offset after each float write in my 3d mesh patch Edited September 8, 2014 by LiQuiD911 Link to comment Share on other sites More sharing options...
wghost81 Posted September 8, 2014 Share Posted September 8, 2014 > Streams are configured in DefaultMaps We knew that before. :wink: But we had no ways to make new streams. Now we can at least try to do it with UDK. Link to comment Share on other sites More sharing options...
johnnylump Posted September 8, 2014 Share Posted September 8, 2014 (edited) Note that the names of council mission maps are hardcoded in XComStrategyGame.upk, XGFundingCouncil, BuildMission(), keying on DisplayName field. I'm not sure what it would do if you had two maps with the same displayname, so you might have to code up a distinct council mission for a different map. But I could be wrong there. Also, do we know what the following fields do in the streamingmaps entry? Loc=( X=0, Y=0, Z=0 ), Rot=( Pitch=0, Yaw=0, Roll=0 ) ... In terms of changing the start location for simple abduction or terror maps (my primary interest), the idea would be to write up a streaming upk that moves the extraction volume, blue particle effect, and xcom start point, and then have that as a distinct map entry in defaultmaps.ini, based on the "regular" map of the same type? That would be great ... would allow for distribution independent of other mods. Would the next step be to develop a template that just needs a few entries for UDK? Fantastic work. Terrific potential here. Edited September 8, 2014 by johnnylump Link to comment Share on other sites More sharing options...
wghost81 Posted September 8, 2014 Share Posted September 8, 2014 (edited) Yes, if we'd create new council maps with different streams, we'd also need to change their names and add those maps into mission selection algorithm inside upk. I will try to make a stream map with UDK and see if it'll work. > Also, do we know what the following fields do in the streamingmaps entry? http://udn.epicgames.com/Three/LevelStreamingHowTo.html They seem to be coordinates at which map is streamed, but since all stream maps in XCOM are cinematic sequences and kismet scripts, those are irrelevant. Although, I was thinking about streaming two existing maps at different coordinates and kinda join them together. It is theoretically possible, because it's what streaming is actually intended for in UE. Edited September 8, 2014 by wghost81 Link to comment Share on other sites More sharing options...
LiQuiD911 Posted September 8, 2014 Share Posted September 8, 2014 (edited) Well I already have a working stream... the PierB one.. I move a dropzone highlight and volume, however at the start bradford tells a single line about the research outpost, but for now it works (: Moving the skyranger would not be seamless because I think it's shadow is baked in the ground texture.There's also the question what to do with the original drop zone. I am currently testing if Group tags would erase it.http://i61.tinypic.com/kx406.jpg I am having trouble pinpointing coordinates in the game level. Is there a command that displays coordinates during play?The following code works with an UNPACKED copy of URB_PierA_StreamB. For patching I use global offsets in the upk.Uhm why does DeserializeAll show different endians? a float 0x451AFFFE shows as 0xFEFF1A45in the map binary MOD_NAME= Street Overpass patcher AUTHOR=liquid DESCRIPTION= mods the streams UPK_FILE=URB_StreetOverpass_Stream3.upk //GLOBAL OFFSETS FOR RESEARCH OUTPOST STREAM //--------------------------------------EXTRACTION POINT HIGHLIGHT-----------------------------------------------// // Vector (X, Y, Z) = (0x451AFFFE, 0xC4470000, 0x34000000) = (2480, -796, 1.19209e-007) //Outpost 1st 0x0000c33c //Outpost 2nd 0x0002455a <- OFFSET=0x0002455a //X REL_OFFSET=0 FLOAT= -3200 //Y REL_OFFSET=4 FLOAT= 300 //Z REL_OFFSET=8 FLOAT=16 //--------------------------------------EXTRACTION POINT HIGHLIGHT-----------------------------------------------// //-------------------------------------------EXTRACTION VOLUME----------------------------------------------------// //Vector (X, Y, Z) = (0x451BFA51, 0xC44C186A, 0x42BDC2B7) = (2495.64, -816.381, 94.8803) OFFSET=0x0002445c //X REL_OFFSET=0 FLOAT= -3600 //Y REL_OFFSET=4 FLOAT= 300 //Z REL_OFFSET=8 FLOAT=96 //-------------------------------------------EXTRACTION VOLUME----------------------------------------------------// Edited September 8, 2014 by LiQuiD911 Link to comment Share on other sites More sharing options...
wghost81 Posted September 8, 2014 Share Posted September 8, 2014 You can write it like this:MOD_NAME= Street Overpass patcher AUTHOR=liquid DESCRIPTION= mods the streams UPK_FILE=URB_StreetOverpass_Stream3.upk //GLOBAL OFFSETS FOR RESEARCH OUTPOST STREAM //--------------------------------------EXTRACTION POINT HIGHLIGHT-----------------------------------------------// // Vector (X, Y, Z) = (0x451AFFFE, 0xC4470000, 0x34000000) = (2480, -796, 1.19209e-007) //Outpost 1st 0x0000c33c //Outpost 2nd 0x0002455a <- OFFSET=0x0002455a MODDED_CODE=<%f -3200> <%f 300> <%f 16> // (x, y, z) //--------------------------------------EXTRACTION POINT HIGHLIGHT-----------------------------------------------// //-------------------------------------------EXTRACTION VOLUME----------------------------------------------------// //Vector (X, Y, Z) = (0x451BFA51, 0xC44C186A, 0x42BDC2B7) = (2495.64, -816.381, 94.8803) OFFSET=0x0002445c MODDED_CODE=<%f -3600> <%f 300> <%f 96> // (x, y, z) //-------------------------------------------EXTRACTION VOLUME----------------------------------------------------// You can turn on cursor location info with "ShowCursorLoc" console command. After experimenting with creating map in UDK, I have to make a confession: I'm totally clueless about map making process. I don't know what all those static mesh components and other things do. But I can tell this: *.udk map packages are same as *.upk maps and can be deserialized and analyzed with UPKUtils. Link to comment Share on other sites More sharing options...
LiQuiD911 Posted September 8, 2014 Share Posted September 8, 2014 Some of the static meshes are volumes which represent level bounds, floors,trigger zones etc . Thanks for the help with the syntax Link to comment Share on other sites More sharing options...
wghost81 Posted September 8, 2014 Share Posted September 8, 2014 (edited) While searching for LZ archetypes inside a map package I found they're organized in "prefabs": http://udn.epicgames.com/Three/UsingPrefabs.html SoldierSpawns_DrpshipVol_12Arc0 is one of the DGN_DropShipSoldierSpawn prefabs. Finally some more info on objects outside TheWorld object. :smile: Will do some more readings. Modding is fun: I'm getting quite an education now. :smile: Edited September 8, 2014 by wghost81 Link to comment Share on other sites More sharing options...
LiQuiD911 Posted September 8, 2014 Share Posted September 8, 2014 Take note that when viewing with the UE explorer, the highlight and volume are XComLevelActor_1 and XComBuildingVolume_1 in the Research outpost stream, not the SoldierSpawns_DrpshipVol_12Arc0 Link to comment Share on other sites More sharing options...
wghost81 Posted September 8, 2014 Share Posted September 8, 2014 (edited) DGN_DropShipSoldierSpawn is a prefab: a collection of objects, grouped together to form a bigger object. A drop zone with Skyranger in this case. URB_ResearchOutpost_Stream has this prefab saved inside and has its instance at TheWorld.PersistentLevel named PrefabInstance_0. This instance uses default property values of a prefab and defines Location, Rotation and Tag property. Location and Rotation determine instance location and rotation and Tag determines a spawn group (Group0 - an only spawn group at this map). I think, by changing Location and Rotation properties of this instance, we could move an entire drop zone with a dropship at once. Edited September 8, 2014 by wghost81 Link to comment Share on other sites More sharing options...
Recommended Posts