Author Topic: invasion mod - 9sMODs - salvaging - drones - galaxy market - pathfind - etc...  (Read 6492 times)

ninekorn

  • Full Member
  • ***
  • Posts: 224
    • View Profile
Re: RELEASED - 9sMODs - Part 2.3.1 BETA - RELEASED
« Reply #15 on: February 06, 2021, 08:50:51 am »
DEMO Project - destructible station attempt fail and i didn't developp this further yet. its working so it's a win, but it's a fail because it is incomplete. The colliders aren't calculated yet by script. But nodes are setup so that the exported xml files work for expanse 1. something still wasn't right with the units conversion from blender to void expanse 1. and those scripts in python that i developped for the void expanse 1 xml parts are the only ones i developped for the moment in python, as i don't know much of python. and as i had always intended it to be, all of this stuff was supposed to be released for my 9sMODs in void expanse 1, which is now the invasion.mpk mod as i am returning back to that name. but i was working on my other projects, in order to loop back to this mod and now i realize that doing all of this stuff by hand, is just not going to cut it nowadays. as i said, void expanse 1 is procedural and i am a modder here so i mod void expanse 1.

https://drive.google.com/file/d/1b0-1TenOs7O2GQhaZr3qBIiaF3S6pdXB/view?usp=sharing

2021-feb-07 - Using adddecoration for a non-collidable station floor tiles makes it possible for players to be able to grab crates inside of the station inner perimeter, instead of having to push them outside of the base in order to grab those crates. 9sMODs at update 2.3.1 had a floor part of the station obj model or something else that wasn't make it possible to grab crates... The drones mod still didn't incorporate a retriever drone, to retrieve crates inside of the base. But the retriever drone demo for the scrap metals created when the ship is being repaired on the platform has the ability to fetch a crate as i was unable to make a normal grappler work on an NPC ship although they work on a player ship. as i had worked on and intended it to be for my mod, to be played on void expanse 1, i am continuing to work on it but doing everything by hand is annoying me now so i am thinking about shortcuts.

DEMO python blender 2.79b scripts and assets that i made for the station floor generation and the station walls generation with xmls as per the destructible mod attempt fail and i didn't developp this further but it can be used as a template for an easy blender 2.79b to void expanse 1 xml parts, as i always intended those generators to be. This contains 2 blender projects and some extra scripts i was using for those station parts that generate xmls but with blender's python instead of custom c# programs. Also included are scripts for generating hulls with textures and objs and xml files directly from inside blender 2.79b. In order to break the floor station parts which aren't collidable, i would have to assign their location x/y to a neighbooring wall in script and when that wall part is destroyed, the neighbooring floor tiles would still be able to be destroyed at the same time but with scripts and logic behind the floor breaking apart. But there is already an API function to get the projectiles in the system so calculating the direction of where the bullet is going and i could even destroy the tiles underneath of where the bullet is going and since the floor underneath is not collidable, the bullet moves over the tiles and everywhere the bullet goes could leave a path of destroyed floor tiles underneath of it. I will try and see if i can add this to a destructible station generation 2 demo. Modders will have to manually create a folder "hulls" on their desktop and change the script output "path" to that folder for the blrnder 2.79b to work. but i will have to loop back to this:

https://drive.google.com/file/d/10mSpL86ZY9KXVZCfBfIo7MnI5Mz6qCPa/view?usp=sharing

DEMO Project - Elite Dangerous MOD startup only with limpets and cubes spawning on asteroids for limpets asteroids retrieval but the limpets retrieving the asteroid parts isn't working anymore. this is my old version of the ai scripts. I've built the limpet but there are no textures yet for it. Also you can spawn a couple of cubes or (any other object - if you make those objects in blender or elsewhere and modify the script) in a grid with an easy onboard drone computer option. you gotta purchase the mining device (with an asteroid icon) in the shop and use it as a mining device in order to spawn cubes right on the asteroids that the player is mining and purchasing the onboard computer and drones in the shop in order to spawn the limpets or grid objects:
https://drive.google.com/file/d/1DMHym1tTf82Vq4XGOxovpiSB6XVtow_L/view?usp=sharing

galaxy market scripts - easier to read. but i need to make a final function check for items to successfully be sold to one player only and with the current version in the 9sMODs there can be cheating and annoyance of the weapon being sold twice but only one player getting the item. if 2 players are clicking to buy the same thing at the same time and are at the last step prior to being charged, if one confirms the purchase before the other, one pays and receives no items. and it doesnt give a console error, what it gives is just an angry ranting and raging player lmfao. a simple fix would be a last confirmation to see if the item still exists in the station items or not when the player wants to confirm his shop item buy, and even make sure the player cash isn't retrieved at all. looping back to this soon.
https://drive.google.com/file/d/19aOTRilRKBzrS5MT1SdW56f9NVyUCJSg/view?usp=sharing

DEMO Project - generation 2 retriever drone with a better precision and less hesitation moving between tiles to retrieve scrap metal. but the stations have no colliders setup in here and crates are spawning for the pathfind to be seen working. a couple of things to fix/tweak here too but i much prefer the speed of this one:
https://drive.google.com/file/d/1fBi3m7bA7WOIH1patIe07qqtoEFcj0pt/view?usp=sharing
Old youtube video that shows the gen2 retriever drone and containers but i removed those containers from the station models in order to have containers that can be separate models and the containers models are in one of those demos files but the drone pathfind wasn't leading to those containers and the retriever drone wasn't putting the scrap metals in those containers. https://www.youtube.com/watch?v=Hzt4QMw0tnA

DEMO - scripts only - For the 5 stations unwalkable tiles scripts. I was only able to make the unwalkable tiles work for the outpost01 station and i have to rotate the pathfind position for the rotated stations also. I am trying to move forward and spend some more time on this but i am sharing them now before i lose those files again in my mess of a desktop:
https://drive.google.com/file/d/1UnDtph0I_54LNlelc9FEJkH76m-MAS9g/view?usp=sharing

i apologize to the devs for the spam post. I am getting more organized on making my descriptions less convoluted but my demos/tutorials are backups of working things that i will all put in the 9sMODs and some of those working backups are parts of working elements needed to make the whole thing work, but those demos need a little bit more love in order to have a thinner description to mention all the non working things in them. everyone could do the same with their own mods of startrek and starwars and eve online etc with their own generators. but those demos/tutorials can be separately tried and they are easier to understand when they are apart... you can use those demos/tutorials as reference to build your own generators if you don't have any, as those are super easy to read but i will have to comment them soon if i can. i am thinking of going back to my first mod name which was invasion.mpk . it's a more generic name. and remove all of those underscores for a more generic/original look instead of trying to put my first and last name initials on every variables when i create stuff in ecmascript5. i am sure it gets people tired of those unreadable scripts of variable names that are hard to figure out hence why i decided to release a readable variable name of the galaxy market. it's taking more and more time to manually make, an ever increasing amount of scripts in the library folder, and having to multiply by 5 formations an amount of 7scripts for the current pathfind and i would have 35 scripts to make corrections by hand so it is not going to cut it manually compared to using scripts generators to increase the amount of drones in formation.  I didn't have the time to move forward on this and i decided to stop multiplying right away the pathfinding scripts by hand and now i am thinking of going procedural for those js scripts too.

I shared the station interiors blender files and the original rebuilt in gimp void expanse icons and shared them here
https://forums.atomictorch.com/index.php?topic=1224.msg7129#msg7129
but if anyone misses any assets for those generators or demos to work, please feel free to contact me and i'll be sure to loop to it in priority.

---------------release---------------
- invasion.mpk mod download - 9sMODs 2.3.2
https://drive.google.com/file/d/1KM_CI3MyUkS22zO7A7hHOxcQZ-WgXtTb/view?usp=sharing
this demo has the comms device menu, which is a basic ladder. But the drone manager Menus aren't working anymore. I didn't remove them on purpose, and if i have a chance within 1-3 days, i will fix this.

invasion.mpk - is a merging of my 9sMODs with my demos/tutorials. But i only invade with forum posts of demos/tutorials, until invasion.mpk invades void expanse 1 with tons of new stuff. The mod isnt finished yet but im still working on it:

it includes:
1. the galaxy market,
2. the mining/combat/repair drones,
3. unbreakable station interiors (they cannot be broken yet),
4. energy weapons additional items but there can be tons more with the easy to learn generator i built, but the settings of those generators aren't completely setup yet. i am working on this still.
5. destructible ships with parts that can be salvaged. There aren't parts for the aliens ships yet so it won't work on alien ships.

energy weapons testing. I added a couple of energy weapons from my generator to have players test them:





---------------release---------------
« Last Edit: February 13, 2021, 02:14:51 pm by ninekorn »

ninekorn

  • Full Member
  • ***
  • Posts: 224
    • View Profile
Re: invasion - 9sMODs -
« Reply #16 on: March 31, 2021, 01:10:55 am »
...out of another self imposed coding challenge of approx 55 days (or much more really, i stopped counting at some point) that i didn't end as of yet but i wanted to release the draft where i am at anyway... self imposed because i was further behind than i thought at merging all of my drafts into one. maybe it's a good thing that my oculus rift broke around the start of february (tried to fix it and broke the pins on the screen connector and mobo connector when only the hdmi soldering probably was loose), no mods of void expanse working out of the box when merging them... every few drafts having months difference and my whole scripts hierarchy changing from scripts to scripts (months after months to years even).

draft DEMO - This project has practically no enemies but in this project i have put the white background which is easily convertible to transparent even inside of virtual reality, as i have done it already and shared a video to ai_enabled and Lurler but i am not sure i had showed them a version where void expanse was running with it's invisible background from inside of virtual reality... but i lost that WIP trailer that i had sent them in private and i lost the original projects in my backups somewhere. My oculus rift headset cv1 is broken but it is not dead yet. this is my best version as of yet to get the drone to use the translated pathfind and sticktopoint.  there is a still a lot of things left to fix. but my main goals for this coding challenge are achieved: the stations unwalkable tiles work for the 5 stations at angle 0 only though and the pathfind is starting or stopping depending on how far or close it is to a station and i incorporated the background i used for my virtual reality tests.

when the drone receives the command to start it's pathfind from the SC_Drone_Station_Manager.js script, it lags the whole server for about a 5-10 seconds for the arrays to be initialized in the scripts but it will lag again after a server reboot when the scripts reinitiliaze with debug_reinit, and this is one of the bugs that i will cover in my next long or short coding challenge. The formations pathfind is working for the 5 stations mining/business/outpost/science/combat at angle 0 degree but not yet for the other angles. I thought getting back to coding javascript in void expanse after so long was going to be easy, well this time it wasn't since it had been so long void expanse had been on the shelf (so that i could move forward for the virtual desktop program instead and bring along void expanse when i was going to be done in VR) and my javascript pathfind translation of the first 9 tutorial videos of sebastian lagues pathfinding tutorial on youtube, was hard for me to re-comprehend the way i wrote it in javascript...

Salvaging doesn't work anymore and no repair and no mining drones and the pathfind works only for a cc drone in formation position 1. will fix soon.

this is a draft, of a working formations pathfind. the perceptron flight helper was setup in this project but i commented it as i had to fix the pathfind and sticktopoint to work in harmony first. I need more time to work on cleaning my draft demos up and when i will have the chance, i will get back to a more similar/identical way of variable names for pathfinding nodes as per how i learned it from sebastian lagues youtube pathfinding tutorial. Although i didn't mention it before, please do consider my earlier heavy release of "demos" to have been rushed releases, but they all are drafts coming from self imposed coding challenges where i don't take a "end/conclusion" timespan to clean up my drafts to make everyone happy although it would be my goal to make you all happy. Currently, this is the best i could achieve in 55 days++ to continue on my series of additional things for my 9sMods.

To have the onboard computer be displayed, you have to read the console screen and get between 4 to 10 ticks of "holding down the keyboard key where the onboard computer is located on your ship". If anyone tries this demo, you might notice a lag hanging the main thread coming from the script SC_Drone_Station_Manager.js but this lag/bug from my scripts doesn't happen on my amd ryzen 2600 but it happens on my amd FX-8350 so i couldn't notice prior to wanting to release it and test it.

there is still a lot of things left to fix overall so i won't release anything for the moment on the steam workshop but instead i just leave it here also as a demo/draft/coding challenge.

https://drive.google.com/file/d/1NzsyvKWMoOY97_bRGree3-CivWla7iuz/view?usp=sharing

Edit 2021-mars-31-07h59pm: my bad - i just noticed the visual tiles aren't being displayed correctly for the business station and military station so everything else except the outpost station might be bugged. and the walkable path might still not be working for any other stations than the outpost 01. I am reviewing this, but nonetheless this project has been my base project for 55++ days now and i will stick with it. hopefully coming anytime soon with a fix for the other stations. i ordered tons of arduino elegoo parts to make my own virtual reality headset since my oculus rift cv1 is broken and dismantled, but now it seems i need to find a way to try and connect a 2.8 inch geeekpi 17pin 2 row connectors to the arduino uno r3 elegoo or the elegoo prototype shield and im missing wires for that and i've got to figure out if that is even possible once one screen is powered on, to power another one on the same build of 1 prototype shield and 1 arduino uno. this christmas i purchased myself an ender 3 barebone edition, and the idea of building my own virtual reality headset has been in my head for quite some time and the printer would print any custom blender object i am making as i have already tried it. electronics just feels like another pile of headaches. i just put that aside this morning (temporarily) and i am trying to study at teamtreehouse while programming void expanse mods and finishing once and for all my packaged/chunked coding challenge of 2-3++ years with this virtual reality desktop displayed as heightmaps for directX non-vr games and void expanses ability to change the jpgs backgrounds to alpha rgbA value to 0 is super easy.
« Last Edit: March 31, 2021, 07:32:25 pm by ninekorn »

ninekorn

  • Full Member
  • ***
  • Posts: 224
    • View Profile
only a video this time of things i am working on. I decided to try and see how "jumping" into a station would look like again. if you are outside of the station, it is not a station anymore, it is now a hull with a collider and it can be destroyed, so this is a step forward for buildable stations although a player would have to jump into a station to see the interior of the station. Also, the station interior now has a roof again. A crate object roof that is removed and added so that players feel more like home. I've also added some tileable perlin terrain and the players can "jump/explore" the planet earth. Inside the planet earth instance/system, the players can go to a maximum Left and Right and Up and Down because i have built a wrapping/limited level that teleports you to the other side of the screen when you reach the maximum distance. This is a demo of my current test bed. there are no enemies added and there are a couple of bugs left to fix left and right.

https://www.youtube.com/watch?v=bw1XpB2OBKg&ab_channel=SteveChass%C3%A9

thank you for watching.
steve

EDIT 2021-april-18: - adding this one day after my post. I've decided to release sccsvd4ve slim version, earlier than expected, in it's unfinished draft condition. the repo download for sccsvd4ve that has a couple of voice recognition commands is now uploaded to github and they work inside of void expanse. you can find it here:

https://github.com/ninekorn/sccoresystems-VD4VE--slim-version--draft

the 9smods/invasion draft google download link is here.
https://drive.google.com/file/d/1VefBUM3YC4zeJGGVyN_aS5DzZYOJneAH/view?usp=sharing

this 9sMods Demo doesn't have any enemies and is just to be tried out to see the wrapping system, the tileable terrain tiles (except the texture that didn't tile properly), the decorations used for planets, the station ship but the collider isn't setup yet for it, and the station interior with doors/containers, and the voice recognition of windows 10.

Prepping the players with a global wide notification that a server update is coming, while playing with the 9sMODs coms device, to advise them their "coms device" won't work properly during that server update is what will remain to do as it really doesn't work when a debug_reinit happens. the rest of the synchronization can be adjusted and tweaked to be tons better. Currently, because of the station activated formations pathfind, spawning a drone activates it's libraries and it lags so talking to void expanses device won't work during the lag. you gotta wait for the server lag to stop. lol, that's how i had intended it to work from the start and although people might find it really far fetched for it to be working, it's actually a very simple solution for synchronizing 2 programs that don't have a compatible API for keyboard keystrokes, and if a server update lag is about to happen, players just have to be removed from using their coms when a debug_reinit is planified. thank you for trying this project. nothing is finished and things are still debugging in the console.

Voice recognition commands:

1. Say computer to activate the menu. You got less than 5 seconds to then activate the other menus.
2. After saying computer, you have 2 choices, say release or retrieve. Although my program recognizes retrieve, it isn't mapped yet in void expanse so you can only release drones for the moment and not retrieve them.
3. Now you can say mining or combat or repair, but only the combat drones are mapped in void expanse. I will work on mapping the rest soon.

Thank you.
steve chassé aka ninekorn

EDIT 2021-april-20:
I forgot to mention:
1. i updated the pathfind with the 9 tile chunk i was talking about inside of this thread here https://forums.atomictorch.com/index.php?topic=969.msg7791#msg7791 and made so that the pathfind is extremely light and per frame if wanted... Although lag remains when any drones are spawned, the first time they are spawned inside of the server because the libraries object arrays are getting heavy in size and i didn't have the time to get back to this and clean this a bit and pinpoint where the lag issue lags and with which arrays.

2. i also provided a super easy javascript script multiplication function, and you can find how it works inside of the script mainwindow.cs of the project sccsvd4ve at line 3422 of that script. The script multiplier function is very basic and has no UI buttons currently so the variables need to be changed in script and i will soon show how to use it. I was able to learn and code this myself 1 week ago approx and since then, my speed to update my scripts has multiplied immensely for anything inside of the lib folder of my mod of void expanse... What this means is a huge increase in the possibility of void expanse 9sMODs drones in formations now that i don't have to manually copy and paste everything by hand and an insane modder speed to make scripts corrections, and with the added blender obj/xml file generator for Ships/hulls and decorations and turrets obj/xml files i have provided and scripted myself, i hope it will make it possible for modders of void expanse have basic tools, to help them mod void expanse to a degree it never was modded before. The script multiplier performance can be increased dramatically for those who understand much better than me how writting to xml files work, among many other things as i still consider myself ignorant in programming and programming languages in general. What the function "public static void sccsScriptAutoCorrectNMultipl y()" does is it multiplies the script formation 1 of the javascript file you want to multiply and it copy pastes everything but changes the formation number to 2 and 3 in new scripts it generates and puts in the folder "multiplied" and how many the modder wants to generate (default 5 and currently my 9smods/invasion need some tweaking to accept more than 5 drones in formation) and it saves the scripts as extension js files ready to use in a folder, and the modder just has to put the scripts in his lib folder after that so that the work is all done in a couple seconds. no need to do anything manually anymore and change all of those numbers by hand for all of the formations positions. First create a folder #VEscriptgen on your desktop and inside of it a folder named original and a folder named multiplied. the moment the program is started, if you set the variable "int scriptMultiply" to 1 instead of 0 in MainWindow.cs, it will generate an identical copy of any of my libs script of formation 1 that you put inside of the folder "original" but only put the number 1 javascripts file in there and it will multiply and copy and paste and change automatically the digit 1 to the digit that the modder wants. It makes it so that any drones in formations have their scripts updated instantly when you take the generated scripts out of the folder name "multiplied" and put them in your lib folder of my 9smods or whatever the mods you wanna build for void expanse. i use the special character "#" at the start of folders names sometimes and because there is the special character "#", they always appear in the top of my folder list when they are sorted alphabetically. If you wanna remove that entirely or put something else there, the variable string folderName = "#VEscriptgen"; is currently at line 3444 of the script MainWindow.cs. I am terribly sorry if my drafts are totally unreadable for beginner coders if they are, but i am trying my best to do everything fast and sometimes i always cut short when comes the time to release because when i've got a working version of something that works, i'd rather share it right away than lose them in my backups shelved stash somewhere and come back to them years later to find some of them not working... it's an annoying/irritating feeling when it happens. lol at this point i'd even say please consider my demos of whatnot all in pre-alpha version for the total drafts that they are. but in all seriousness i am coming soon with tutorials and cleaner drafts and better variable names and the translation references to sebastian lague's youtube pathfinding tutorial but without using any multithreading. In it's current state and without using the timer class, the pathfind is limited to the decisions per seconds of the Decisions(args) of the ai scripts. Oh and the script multiply also work for my scripts inside of the AI folder. If he had planified to translate his tutorial to javascript himself, i am sorry i did it before him but in a draft kinda way because even then i had issues understanding his c# tutorial and even had to name the variables differently so that it would help me understand, so all in due time, i will make sure to reference the variable names correctly as i was looking from the start as a "translation" from c# to javascript rather than "i learned how to do it myself". I prefer always thanking the "teachers" i learn coding from and his youtube pathfinding series is considered a tutorial for pathfinding in c# and i couldn't find anything that suited me then so i wanted to learn how to code it but i had to translate it for it to be working in javascript for void expanse. I succeeded doing a ridiculous version of his pathfind in c# in a coroutine that was working for custom mazes of another youtubers tutorial that i will search for again as i have lost the reference i think. but i didn't share that project either although i might when i get to that working shelved backup. As people should know here and where i am on the elite dangerous forums, i always give references from where i get the tutorials from and where i search for information and where i get it. but before i do the translation to sebastian lague's variable names from what is inside of tutorials 0 to 8 or 9 of his pathfinding series approx, i will ask the permission like i always do also when i ask the unity3d assets store developpers the permission to use their assets elsewhere, out of respect for them. If you are a modder like me, than you know that losing backups of working things is sad and it hurts and it sucks, so please make a backup of your library folder or/and of your whole project before you copy paste the multiplied scripts in your library folder. currently, there is no "reverse" or "undo" option hence why it is the modder's decision to use his generated scripts and paste them themselve to update their own mod. i will soon work on a "reverse" or "undo" option because i am already tired to lose a 5 mins script update and scrap all of my lib folder combat drone script in one shot if i forget to do a backup first when i've got a working thing going on...  otherwise you can scrap your whole lib folder in a sec if you paste terrible stuff right on your good 9sMods libraries or mod variant and believe me, it's a pain to have to search for a working version in your backups if you are an unorganized hobbyist programmer like me so just beware of that when you use this script generator tool.
« Last Edit: April 20, 2021, 09:30:01 pm by ninekorn »