Jump to content

xisec

Members
  • Content Count

    37
  • Joined

  • Last visited

Community Reputation

0 Neutral
  1. Hi again! La Quinta Alianza is a litte spanish-speaking alliance created by 3 teammates 3 years ago. Now, we are pleased to inaugurate our little public dedicated server. Everyone can join it: IP: 62.113.247.66 IP alias: lqa.4npserver.de Password: lqa More info in the Discord server. La Quinta Alianza
  2. This would be really nice
  3. Hi ! "Transform all selected Blocks" (TASB) and "Only show specifig blocks" (OSSB) together are incredible powerfull and usefull building functions. Change our ships fitting is much easier now, we haven't to be "digging" in our ships removing and placing blocks only to change their block type. BUT there is a little problem: Gyro Arrays, Hangar, Directional Thrusters... Orientation dependent blocks (ODBs) can't be transformed easily. For those, we still need the traditional: 1) "Dig" in the ship to reach the block to be replaced. 2) Replace the block with the same dimensions but rotated in the desired position in order to perform its new functionality. The tediousness of this step is the biggest problem right now. Even change a superficial ODB is a little pain, and even more if the dimensions are a bit odd, like x=2.53 y=5.67 z=3.84. 3) "Bury" the transformed block again. So I propose a new building function: "Change block orientation" (CBO): It would allow to change the orientation of already placed blocks. In technical words, it would change the "look" and "up" attributes (xml ship desing) of the block without changing its dimensions. This way, we would be able to transform ODBs with the function OSSB in the same way we use it now with TASB. It would be a blessing. And it seems easy to implement. A function to CBO in hand (CBOIH) would be nice too. It seems even easier to implement, but this way we still would be unable to transform blocks inside the ship. And if CBO is implemented, we can just place blocks and orientate them later. Thanks for reading !
  4. Hi guys! I was trying to figure out the solar panels credit cost formula, but I am a bit stucked (and, lately, needed of time, also ::) ) I will drop here my spreadsheet with some numbers: https://docs.google.com/spreadsheets/d/1KE7cDbHAXdh8xdLrYmfD-X5jPUsdKLaxkeo4PQ-O8pI/edit?usp=sharing * In context: -The price of the other types of cubes is calculated with this formula: cc = v * mf * tf where cc = credit cost v = volume mf = material credit cost factor tf = type credit cost factor ( this two last are game constants, for example, the mf for Titanium is 15 and the tf for Cargo Bay type is 2.5 ) - The formula for the energy generated is: E = sqrt( 6000000000000 * v * a ) where E = energy v = volume a = area (maybe the cost formula is similar or related to this! ) See u in Avorion!!
  5. Hey mates! I have been spending some time in a project lately. It is an Avorion builder API for Java. It not only allow to plan designs, but also simulates mechanics and stats ( some mechanics have been very hard to figure out, like hyperspace reach and cooldown). This may allow to program advanced procedurally designs based on parameters or ship requeriments. The alpha versión is advanced, but not ready yet. However, viewing the evolution of the game AI creating new procedurally designs, I will drop here a little teaser too :) I know that devs provide an API for modding in Lua, but I am a kind of fan of Java, and I love to analyze games as well, so... I am enjoying this and I think that can be funny to use for someone else. TEASER: (I am in the village now, so the upload speed is VERY slow. It may take a handful of hours to finish) The file created in the video is attached to this post. P.S: You may find some bug in the teaser :P I will also take the opportunity to pump this post: https://www.avorion.net/forum/index.php/topic,6015.0.html avuilder4j-showcase.txt
  6. It seems that there isn't pieces overlap... that's nice! Guys, the AI is evolving... We must too ... Very soon ;)
  7. Ok, I think that I have it. I though that each face of the cuboid had an index of reference. In this case, for example, if you rotate a cuboid over the axis Z, only the Up value should change, since the Look value is in the Z axis and does not rotate. But it seems that this is not the case. The right approximation is: you have to imagine a cuboid inside a system of references. So it is like the references are in the coordinate system, the references are not in the cuboid faces. Each cuboid has a side that is the designated Look and Up face. By default, when the cube is placed wihout any rotation (default position), the face facing towards upper y (uy) is the Up, and the face facing towards lower z (lz) is the Look. For example, in the case of the cube "Ligh", the light bulb is the Up side, and the side that by default appears in lz is the Face side. In this case, if you rotate a cuboid over the axis Z, any of the Up or Look value can change, depending of the state of rotation of the cuboid. Now all numbers of the experimental data about rotations fix with the theory. Remember N1,N2 = Look, Up values. So 5,3 means look 5 and up 3. Around X: 5,3 (default) -> 2,5 -> 4,2 -> 3,4 -> 5,3 (again) Around Y: 5,3 (default) -> 0,3 -> 4,3 -> 1,3 -> 5,3 (again) Around Z: 5,3 (default) -> 5,0 -> 5,2 -> 5.1 -> 5,3 (again) Also, since default position, I have rotated the cube over X one time and I have repeated the previous movements since this position (2,5). This are the experiment numbers, which fix with the references: Around X: 2,5 (test position) -> 4,2 -> 3,4 -> 5,3 -> 2,5 (again) Around Y: 2,5 (test position) -> 2,0 -> 2,4 -> 2,1 -> 2,5 (again) Around Z: 2,5 (test position) -> 1,5 -> 3,5 -> 0,5 -> 2,5 (again)
  8. No, I can't fit it. I copied the experimental results wrong in the previous post. I have edited and corrected it there, but I will paste them again here anyway: Around X: 5,3 (default) -> 2,5 -> 4,2 -> 3,4 -> 5,3 (again) Around Y: 5,3 (default) -> 0,3 -> 4,3 -> 1,3 -> 5,3 (again) Around Z: 5,3 (default) -> 5,0 -> 5,2 -> 5.1 -> 5,3 (again) This is what I can't fit: My wrong case. In the case of rotation around Z, the results should be: 5,3 (default) -> 5,0 -> 5,2 -> 5.1 -> 5,3 (again) but with my references the result are: 5,3 (default) -> 5,1 -> 5,2 -> 5.0 -> 5,3 (again) ( References in axis X seems to be reversed) Your wrong case, peacefighter. In the case of rotation around Y, the results should be: 5,3 (default) -> 0,3 -> 4,3 -> 1,3 -> 5,3 (again) but they are: 5,3 (default) -> 1,3 -> 4,3 -> 0,3 -> 5,3 (again) ( References in axis X seems to be reversed) If I try to fix the references so the results are correct in one axis, the results become incoherent in other axis. I have checked the experimental results like 20 times, and they are right. At this point, and viewing the odd reference numbers that we get, I think that there may be some bug in game which prints wrong the xml files but at the import time it is corrected in someway. Or maybe I am missing something, but I have squeezing my brain too much and I find all results incoherents.
  9. xisec

    Hello

    Welcome to Avorion! In order to increase your turrets number you need system upgrades: https://steamcommunity.com/app/445220/discussions/0/135507548124622365/
  10. Hi again peacefighter ! I am creating an API of Avorion for Java. To create our own procedurally or parameterized designs. It will be able to calculate some game values also, hence the database. It will also allow some unavailable operations in the game, like escalate the ships only in one axis, escalate by systems slots required, and so on. It is advanced... I would like to publish it before new year. I will publish the whole code.
  11. Hey peacefighter! Yes, you are right, I've been squeezing my brain today with this and I think that I have some results. The practical results are coherent, but the results "references" that I have figured out are a bit "weird" I think: If you edit an xml ship file introducing a wrong Up and Look combination, the design corrects it and set this default values: 5 for Look 3 for Up And, if you rotate the block over the diferent axes, the orientation values are these ( <Look>,<Up> ): Around X: 5,3 (default) -> 2,5 -> 4,2 -> 3,4 -> 5,3 (again) Around Y: 5,3 (default) -> 0,3 -> 4,3 -> 1,3 -> 5,3 (again) Around Z: 5,3 (default) -> 5,0 -> 5,2 -> 5.1 -> 5,3 (again) This leads to this default orientation references: This is a bit weird because: 1.- "Up" is down. Edit. Sorry, it can be represented like this, but the not symmetrical issue (2) is still there: 2.- The faces index are not symmetrical: lower x face = 1 upper x face= 0 ly = 3 uy = 2 lz = 4 uz = 5 <--- is inversely to the rest: higer number for upper and minor for lower. It is a bit weird but any other indexes or references does not match with my "experiments".
  12. Hmm... Do you refer to the modding API, right? I haven't seen anything about this there :-\
  13. Hello there! I am working on a personal project about Avorion and I needed a database, so I will share it here. It is a SQLite3 database. Database: https://drive.google.com/file/d/1IeTUXqt_C5gxQ-6jqbybEyFYDJIDqJpY/view?usp=sharing Database export file: https://drive.google.com/open?id=1SUOBXm_5C0jUeLOxwvGFtDKG0Fys4Ubd Here is also a google calc with the tables and views: https://docs.google.com/spreadsheets/d/1kPZCVP2YwgZlZmgdvyKqTUgISATYdqQI3WEUARCAHOE/edit?usp=sharing Please report errors! I hope it helps someone! See u in Avorion! ;)
  14. xisec

    Forum Bug

    yeah guys, too buggy! :(
  15. I am working with some xml ship design files and I am having problems to solve the meaning of some values. Let's go with an example. Ship's XML file: <?xml version="1" encoding="utf-8"?> <ship_design> <plan accumulateHealth="true" convex="false"> <item parent="-1" index="0"> <block lx="-1" ly="-1" lz="-1" ux="1" uy="1" uz="1" index="1" material="0" look="1" up="3" color="ffbfaea3"/> </item> <!-- Red, X --> <item parent="0" index="1"> <block lx="1" ly="-0.5" lz="-0.5" ux="2" uy="0.5" uz="0.5" index="61" material="3" look="3" up="5" color="ffff0000"/> </item> <item parent="1" index="2"> <block lx="2" ly="-0.5" lz="-0.5" ux="3" uy="0.5" uz="0.5" index="61" material="3" look="5" up="2" color="ffff0000"/> </item> <item parent="2" index="3"> <block lx="3" ly="-0.5" lz="-0.5" ux="4" uy="0.5" uz="0.5" index="61" material="3" look="2" up="4" color="ffff0000"/> </item> <item parent="3" index="4"> <block lx="4" ly="-0.5" lz="-0.5" ux="5" uy="0.5" uz="0.5" index="61" material="3" look="4" up="3" color="ffff0000"/> </item> <!-- loop --> <item parent="4" index="5"> <block lx="4" ly="-0.5" lz="-0.5" ux="5" uy="0.5" uz="0.5" index="61" material="3" look="3" up="5" color="ffff0000"/> </item> <item parent="5" index="6"> <block lx="5" ly="-0.5" lz="-0.5" ux="6" uy="0.5" uz="0.5" index="61" material="3" look="5" up="2" color="ffff0000"/> </item> <item parent="6" index="7"> <block lx="6" ly="-0.5" lz="-0.5" ux="7" uy="0.5" uz="0.5" index="61" material="3" look="2" up="4" color="ffff0000"/> </item> <item parent="7" index="8"> <block lx="8" ly="-0.5" lz="-0.5" ux="9" uy="0.5" uz="0.5" index="61" material="3" look="4" up="3" color="ffff0000"/> </item> <!-- loop --> <item parent="8" index="9"> <block lx="9" ly="-0.5" lz="-0.5" ux="10" uy="0.5" uz="0.5" index="61" material="3" look="3" up="5" color="ffff0000"/> </item> <item parent="9" index="10"> <block lx="10" ly="-0.5" lz="-0.5" ux="11" uy="0.5" uz="0.5" index="61" material="3" look="5" up="2" color="ffff0000"/> </item> <item parent="10" index="11"> <block lx="11" ly="-0.5" lz="-0.5" ux="12" uy="0.5" uz="0.5" index="61" material="3" look="2" up="4" color="ffff0000"/> </item> <item parent="11" index="12"> <block lx="12" ly="-0.5" lz="-0.5" ux="13" uy="0.5" uz="0.5" index="61" material="3" look="4" up="3" color="ffff0000"/> </item> <!-- Green, Y --> <!-- loop --> <item parent="0" index="14"> <block lx="-0.5" ly="0" lz="-0.5" ux="0.5" uy="1" uz="0.5" index="61" material="3" look="3" up="5" color="ff00ff00"/> </item> <item parent="14" index="16"> <block lx="-0.5" ly="2" lz="-0.5" ux="0.5" uy="3" uz="0.5" index="61" material="3" look="3" up="0" color="ff00ff00"/> </item> <item parent="16" index="17"> <block lx="-0.5" ly="3" lz="-0.5" ux="0.5" uy="4" uz="0.5" index="61" material="3" look="3" up="4" color="ff00ff00"/> </item> <item parent="17" index="19"> <block lx="-0.5" ly="3" lz="-0.5" ux="0.5" uy="4" uz="0.5" index="61" material="3" look="3" up="1" color="ff00ff00"/> </item> <!-- loop --> <item parent="19" index="20"> <block lx="-0.5" ly="4" lz="-0.5" ux="0.5" uy="5" uz="0.5" index="61" material="3" look="3" up="5" color="ff00ff00"/> </item> <item parent="20" index="21"> <block lx="-0.5" ly="6" lz="-0.5" ux="0.5" uy="7" uz="0.5" index="61" material="3" look="3" up="0" color="ff00ff00"/> </item> <item parent="21" index="22"> <block lx="-0.5" ly="7" lz="-0.5" ux="0.5" uy="8" uz="0.5" index="61" material="3" look="3" up="4" color="ff00ff00"/> </item> <item parent="22" index="23"> <block lx="-0.5" ly="8" lz="-0.5" ux="0.5" uy="9" uz="0.5" index="61" material="3" look="3" up="1" color="ff00ff00"/> </item> <!-- loop --> <item parent="23" index="24"> <block lx="-0.5" ly="9" lz="-0.5" ux="0.5" uy="10" uz="0.5" index="61" material="3" look="3" up="5" color="ff00ff00"/> </item> <item parent="24" index="25"> <block lx="-0.5" ly="10" lz="-0.5" ux="0.5" uy="11" uz="0.5" index="61" material="3" look="3" up="0" color="ff00ff00"/> </item> <item parent="25" index="26"> <block lx="-0.5" ly="11" lz="-0.5" ux="0.5" uy="12" uz="0.5" index="61" material="3" look="3" up="4" color="ff00ff00"/> </item> <item parent="26" index="27"> <block lx="-0.5" ly="12" lz="-0.5" ux="0.5" uy="13" uz="0.5" index="61" material="3" look="3" up="1" color="ffeeee00"/> </item> <!-- Blue, Z --> <item parent="0" index="28"> <block lx="-0.5" ly="-0.5" lz="1" ux="0.5" uy="0.5" uz="2" index="61" material="3" look="3" up="1" color="ff0000ff"/> </item> <item parent="28" index="29"> <block lx="-0.5" ly="-0.5" lz="2" ux="0.5" uy="0.5" uz="3" index="61" material="3" look="0" up="3" color="ff0000ff"/> </item> <item parent="29" index="30"> <block lx="-0.5" ly="-0.5" lz="3" ux="0.5" uy="0.5" uz="4" index="61" material="3" look="2" up="0" color="ff0000ff"/> </item> <item parent="30" index="31"> <block lx="-0.5" ly="-0.5" lz="4" ux="0.5" uy="0.5" uz="5" index="61" material="3" look="1" up="2" color="ff0000ff"/> </item> <!-- loop --> <item parent="31" index="32"> <block lx="-0.5" ly="-0.5" lz="5" ux="0.5" uy="0.5" uz="6" index="61" material="3" look="3" up="1" color="ff0000ff"/> </item> <item parent="32" index="33"> <block lx="-0.5" ly="-0.5" lz="6" ux="0.5" uy="0.5" uz="7" index="61" material="3" look="0" up="3" color="ff0000ff"/> </item> <item parent="33" index="34"> <block lx="-0.5" ly="-0.5" lz="7" ux="0.5" uy="0.5" uz="8" index="61" material="3" look="2" up="0" color="ff0000ff"/> </item> <item parent="34" index="35"> <block lx="-0.5" ly="-0.5" lz="8" ux="0.5" uy="0.5" uz="9" index="61" material="3" look="1" up="2" color="ff0000ff"/> </item> <!-- loop --> <item parent="35" index="36"> <block lx="-0.5" ly="-0.5" lz="9" ux="0.5" uy="0.5" uz="10" index="61" material="3" look="3" up="1" color="ff0000ff"/> </item> <item parent="36" index="37"> <block lx="-0.5" ly="-0.5" lz="10" ux="0.5" uy="0.5" uz="11" index="61" material="3" look="0" up="3" color="ff0000ff"/> </item> <item parent="37" index="38"> <block lx="-0.5" ly="-0.5" lz="11" ux="0.5" uy="0.5" uz="12" index="61" material="3" look="2" up="0" color="ff0000ff"/> </item> <item parent="38" index="39"> <block lx="-0.5" ly="-0.5" lz="12" ux="0.5" uy="0.5" uz="13" index="61" material="3" look="1" up="2" color="ff0000ff"/> </item> <!-- Yellow --> <item parent="12" index="44"> <block lx="13" ly="-0.5" lz="-0.5" ux="14" uy="0.5" uz="0.5" index="61" material="3" look="3" up="1" color="ffeeee00"/> </item> <item parent="39" index="45"> <block lx="-0.5" ly="-0.5" lz="13" ux="0.5" uy="0.5" uz="14" index="61" material="3" look="3" up="1" color="ffeeee00"/> </item> <item parent="0" index="46"> <block lx="-0.5" ly="-2" lz="-0.5" ux="0.5" uy="-1" uz="0.5" index="61" material="3" look="3" up="1" color="ffeeee00"/> </item> </plan> </ship_design> Ship: Some attributes are easy to figure out: Each block has an index number and a parent identified by its index. Block's dimensions are defined by 6 variables, upper and down values in each axis ( in Cartesian coordinates ): lx, ux, ly, uy, lz, uz. The plan's attributes, "accumulateHealth" and "convex", seems to always have the same values, "true" and "false" respectively. I don't know what could be the meaning of this neither. But the attributes whose meaning I would like to figure out, because of their importance, are, mainly, "look" and "up"; and "color" in a lesser extent. COLOR: The last 6 digits configure a RGB color format, ok. But what are the 2 first digits? They are also hex values, but it seems that they are always "ff". I have performed some test changing this digits, but it seems that nothing changes. LOOK and UP. This two attributes determine the block's orientation (if a directional thruster is working on X, Y, or Z; if a corner shaped block is "upside down", and so on). But I can not understand the relation between the values of this attributes and the block's final orientation. The possible values, for both of them, is from 0 to 5. [i have to go now, i will edit and expand my explanation] Do you have, guys, any idea of the meaning of this values? Thx for reading! See u in Avorion!
×
×
  • Create New...