hi everyone,
it's been a while that i have coded in void expanse, about 9 months from now, i still had bugs to fix but a major one that happens about 10 to 15 mins ++ during play (to be re-tested) when save game happens and the server crashes. it can happen when you change systems (and an auto-save happens) or/and when you get out of a station (and an auto-save happens). here are the 3 bugs that i am currently facing described in details. i think i might have only fixed 1 out of those 3 bug with some major changes that were happening when i was trying the destructible station mod and i might have lost the way to fix 1 out of those 3.
this is the problem that i had fixed... in my head actually. its due to some changes maybe that i made in the original scripts generategalaxy.js. Although it shows the problem is in DLC1, i never made any changes to DLC1

c-field generator issue. i think i asked about this already. i will review my posts on the forums.

i think this one is related to the problem number 4 which leads to the savegamecrash. I think it might be due to the weird names i give the files to pass extra data to void expanse like rotations of stations are actually my file names for instance "science_01_180.xml" means station type "science" model "01", rotation 180 degrees. When i sort through the file inside of javascript, that file name is so important but provides additional data as i described to pass on to void expanse from outside of an xml file.

this has to be about the way i parse the file (there is no parse but only the name of the file actually) and un-parse them in void expanse which is using the xml file name only but . i will continue to investigate.

else if (base_xml.indexOf("science") >= 0)
{
var getSomeIndex = base_xml.substring(11, base_xml.length); //science_01_0
var index = indexOfStuff(getSomeIndex);
if (index == 0)
{
index = 4;
}
else if (index == 1)
{
index = 5;
}
else if (index == 2)
{
index = 6;
}
else if (index == 3)
{
index = 7;
}
else if (index == 4)
{
index = 0;
}
else if (index == 5)
{
index = 1;
}
else if (index == 6)
{
index = 2;
}
else if (index == 7)
{
index = 3;
}
parsedAngle = parseInt(getSomeIndex);
var tempCoordRefuelX = bas_coord.x + 3.5;
var tempCoordRefuelY = bas_coord.y + 14.5;
var tempCoordRefuel = { x: tempCoordRefuelX, y: tempCoordRefuelY };
var tempCoordRepairX = bas_coord.x - 3;
var tempCoordRepairY = bas_coord.y + 14.5;
var tempCoordRepair = { x: tempCoordRepairX, y: tempCoordRepairY };
var rotatedCoordRefuel = RotatePoint(tempCoordRefuel, bas_coord, parsedAngle);
var rotatedCoordRepair = RotatePoint(tempCoordRepair, bas_coord, parsedAngle);
var StationRefuelPlatform = generator.AddSpecialObject(sys_id, rotatedCoordRefuel.x, rotatedCoordRefuel.y, arrayOfRefuelPlatforms[index], 0);
var StationRepairPlatform = generator.AddSpecialObject(sys_id, rotatedCoordRepair.x, rotatedCoordRepair.y, arrayOfRepairPlatforms[index], 0);
var turret_radius = 35;
var level = inf.danger_level + Math.round(MathExt.RandDouble() * 4 - 2);
level = utils.Clamp(level, 1, 100);
//var angle_offset = 0.0;
NpcGenerator.SpawnTurretsOfType(args, bas_coord, 4, level, turret_radius, "Turret", "special_human_turret", inf.faction, { class: "turret", non_talkable: true }, parsedAngle, base_xml, sys_id, base_id);
var theBase = { id: base_id, coord: bas_coord, base_xml: base_xml, sys_id: sys_id, rot: parsedAngle};// widthL: 21, widthR: 21, heightT: 19, heightB: 42,
storage.SetGlobal("system_" + sys_id + "_base_" + base_id + "_xmlStationType", theBase);
}
and once those and the station turret placement are done, i will be able to release the patch 2.3.1 also when i will have done minimum this:
1. microphone input for void expanse where a player can talk, and have his voice give commands without ANY SORT OR FORM OF HACK. it is very important that you engrave this in your minds. There is no limit for a modder like ninekron. sharpDX keyboard input at "image location of device slot 4 or 5 or 6 or 7" and then 1 keyboard click on number 4 let's say and i've already got an AI drone receiving my commands at 20 frame rates per seconds and that leads to my drone menus as in morse code S.O.S is "... - - - ..." and then my drone will be oh noes "my master is in danger, lets go save him":
frame 0 -
dot - device is activated per frame and frame 0 activates the variables and captures first "dot or pause". device captures dot (device activated on the slot)
frame 1 -
dot - device captures dot (device activated on the slot)
frame 2 -
dot - device captures dot (device activated on the slot)
frame 3 -
pause - device captures pause which means nothing/nada/no device activation.
frame 4 -
pause - device captures pause which means nothing/nada/no device activation.
frame 5 -
pause - device captures pause which means nothing/nada/no device activation.
frame 6 -
dot - device captures dot (device activated on the slot)
frame 7 -
dot - device captures dot (device activated on the slot)
frame 8 -
dot - device captures dot (device activated on the slot)
but the only problem will be the synchronization. i already have the input working. i say the letter "a" for attack and void expanse device starts but currently there is nothing else except a counter. today i am showing you proof but, un-unsyncronized proof. and i think the frames between the "dots" and the "pauses" will have to be longer.
currently i am working on the turrets placements for all stations but i've still got the turret buying to add.

here is the same turret placement compatible for the business station. its identical and symetric (argumentable a bit and i can prove that i am not totally 100% correct on my conversion of the units from blender to Void Expanse)
here are some defects in the current platform placement:
i will need to rotate 180 degrees both the refuel and repair platforms of the business station

i will need to rotate 180 degree the mining station refuel platform

then 10 minutes later i realized wow, i am working towards showing my defects... let me put some green marks on that right away
edit#2020-04-29at07h49pm#can-east# i am about done with all stations turrets placements except the army station. they are nice but not perfect yet. they need a little bit more love and preferably not spawn in the middle of my stations would be awesome. it's almost there.