xeger / kos-ramp

Relatively Adequate Mission Planner: a rudimentary, scriptable autopilot for kOS.
Other
55 stars 23 forks source link

Updates of the repo #42

Open astappiev opened 5 years ago

astappiev commented 5 years ago

I found this fork very useful https://github.com/MartinDomig/kos-ramp Any plans to merge changes from it into the repository?

xeger commented 4 years ago

Oh my goodness; sorry, I didn't see this issue until just now.

I haven't played KSP in quite some time; as such, this repo is essentially abandonware. The other contributors have lost interest at well.

I'd like to pull some of MartinDomig's work back upstream, but there are a lot of past contributions that I'd like to "trim away" from this repo first -- there's a lot of off-axis thrust code that one contributor added because he was in love with space planes, for example.

I think the lesson I've learned, is that this repo is mostly intended for people to fork and have fun with. :-) Nevertheless, it would make some sense to try to pull some "modules" from forks, back into here, so that people can have fun with them in a modular way. If I did that, I would focus on documenting the other peoples' work and creating "tutorial" mission scripts to show it being used.

Are you actively playing with KSP/KOS still? Have you found this repo or its forks useful?

astappiev commented 4 years ago

Not really, but I start to play again from time to time. And all the time I use kos-ramp. I have no idea how to use KOS without kos-ramp, I don't want, don't have to involve much time into physics and mathematics to program all that stuff. But with this library, I can say "Rocket! Fly!" and it does. Thanks for this!

It is like gpiozero for Raspberry! You can do something without it, but it gives you easy way to do more!

fellipec commented 4 years ago

To be honest I abandoned this for a while and when returned to it what I had in my computer was way too obsolete, but since I knew the code, continued using it, and focused on atmosphere flight. You can find that on my github, as is.

Obter o Outlook para Androidhttps://aka.ms/ghei36


From: Oleh Astappiev notifications@github.com Sent: Thursday, December 5, 2019 9:10:41 AM To: xeger/kos-ramp kos-ramp@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [xeger/kos-ramp] Updates of the repo (#42)

Not really, but I start to play again from time to time. And all the time I use kos-ramp. I have no idea how to use KOS without kos-ramp, I don't want, don't have to involve much time into physics and mathematics to program all that stuff. But with this library, I can say "Rocket! Fly!" and it does. Thanks for this!

It is like gpiozero for Raspberry! You can do something without it, but it gives you easy way to do more!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fxeger%2Fkos-ramp%2Fissues%2F42%3Femail_source%3Dnotifications%26email_token%3DAEACKIIC24IV5UMLMTH6U63QXDVUDA5CNFSM4HB3P7ZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGAQGNY%23issuecomment-562103095&data=02%7C01%7C%7C03263ce0442f4d0757da08d7797c262b%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637111446425023677&sdata=TIX2AXY7CsvykrNf94SiBX195lSygla2DDqWCUAJw8k%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEACKIK3AXQVDOMZ3KJQ3MLQXDVUDANCNFSM4HB3P7ZA&data=02%7C01%7C%7C03263ce0442f4d0757da08d7797c262b%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637111446425033682&sdata=zRL2OC4jlxn6mHrr4wCVNUL9kRtQdM3uIrq7XKvGsEE%3D&reserved=0.

xeger commented 4 years ago

@astappiev these are good points. For the moment I will make you a collaborator of the repository so you can contribute changes if you'd like.

When I get some downtime (haha!) I will remove some of the atmospheric/asymmetric-thrust code now that @fellipec has rescued it and developed it into his own library, and I will look at incorporating some of the A* stuff you mentioned.

KOS has made enormous progress in UI; I understand that it can display onscreen menus now. I will focus on making RAMP into something that can be used as a piece of software, and not necessarily just as a learning platform.

How do you find bootstrap scripts, the volume-copy routines, and the mission script system? Are they usable enough? Other contributors have done a great job simplifying things, but as someone who likes to use "only" RAMP, I would be curious to hear your opinion!

astappiev commented 4 years ago

Finally, I had some free time during weekends and played around.

I extracted a few useful commits from MartinDomig fork. Before I thought that it contains more useful changes, but most of them are code style, removing debug information or fine-tuning for his needs.

But before merging them or even creating a merge request, I need to test them. As I mentioned before, I didn't try to write my own Kerbal scripts before, so my experience is quite limited (at least now, also I have no good physics background).

I extracted changes to these branches (changes from multiple commits I merged together, also avoided all unrelated changes) https://github.com/astappiev/kos-ramp/commits/MartinDomig-merge (small improvements, seems to be fine) https://github.com/astappiev/kos-ramp/commits/MartinDomig-docking (docking with graphing hook) https://github.com/astappiev/kos-ramp/commits/MartinDomig-maxq (maxq related changes)

I finished work yesterday, but today before wringing this message I checked all changes again and I think that maybe I should not spend the whole day for that, only a few commits are worth merging :)

astappiev commented 4 years ago

About the bootstrap script.

I can suggest the following file structure for this repository and RAMP in general.

If I copy everything to ramp folder locally, it will work now. But I propose to make it mandatory for better stackability. Also, renaming boot scrip from boot.ks to ramp.ks is for the same reason. This will also make the installation step more clear, just copy the content of the repository to @game/Ships/Script folder. And there is only a very low chance that the ramp folder already exists, but with many files (like now), chances are much bigger (If someone tried to write a Kerbal script before, names like land, fly, launch are pretty common).

Also regarding the mission folder, I understood the idea, but the implementation is not finished in my opinion. I propose to add an argument to initialize script to copy one of the templates instead of always coping sample.ks. It should be an optional argument or GUI/console selector.

If you like my ideas, I would be glad to implement them.

astappiev commented 4 years ago

What about code style?

What do you prefer? I will format all files according, now it is different between files.

As for my opinion

xeger commented 4 years ago

I think putting the scripts and the boot script into their own ramp namespace are a great idea! Go ahead and do it. I will happily review your PRs, but feel free to merge them on your own once they're tested. I don't have time to work on RAMP or play KSP, but I want it to be useful to other players -- as you are the only active collaborator, consider yourself the owner for now. :-)

I recommend reorganizing the files first, then normalizing the code style. Your code style suggestions sound fine. Personally I prefer 2 spaces because in the past, people could accidentally use spaces (and different numbers of spaces depending on their local preference) .. but with modern editors this isn't a very big issue, so, tabs are probably fine.