MSD

[1.1.2] EVA Follower [v1.035, 20 May 2016]

Recommended Posts

Sorry to bother you but it seems when I use this mod it breaks my save file I can't open anything or do anything at ksc. I don't know if its the mod I will look for evidence. Nevermind it's not ur mod

Edited by Teto

Share this post


Link to post
Share on other sites

I'm testing this for 0.25 now.

Share this post


Link to post
Share on other sites

hey. It works for 0.25. I was using it without know if was aproved for that version. haha.

btw. great mod!

Share this post


Link to post
Share on other sites

Very cool mod man, thanks!

The possible future implementation of EVA with JETpacks on space will be super.

Edited by Climberfx

Share this post


Link to post
Share on other sites

i have been watching this for a loooong time and i have to say that i am happy that it is still alive a kicking :)

Share this post


Link to post
Share on other sites

About is live and kicking... It isn't.

caution: major ramble ramble ramble factor here.

note: It could be more frustating souding than it is (and a bit random at times), keep that in mind. I do also don't care at correct spelling right now, I don't feel like it, nor a I a writer. Sorry for that in advance.

There a several problems, causing most joy I got sucked out of me. First of all, I'm not used to Unity at all, even thought it isn't the the biggest pain in the arse.. It's squads code.

Developers might understand this, players I guess not, but I'm going to try to explain it anyway; Unity just doesn't care, every exception often nullreference objects, just get ignored (aka "catched"). I guess this is a good thing, it keeps the game from crashing, but the lack of a debugger means you often don't know what happend, ending up you (=the developer) just guessing, using all kind's of error checking everywhere... I can live with that, but the squad code just pisses me off, there is no documentation at all, (Hey, I can't blame them for a game still in development... but then again if 0.26.. eeh 0.99 is feature complete.. perhaps they will work on it. ). Most of my complains has to do with bugs, and you can find plenty with the pristine release. Add some mods, and you don't know what is causing this, good luck finding it. The fact that the game takes ages to load because everything is loaded at start.. and if you want other mod compatability you need to load another mod-set of .. sure 700 MB (I'm looking at you helldiver ;) ), and if only you could add some parameter to the executable, so you can skip all menu and jump right into a save file.... I'm sure most developers will like that.

The animation system is weird an clunky, Unity causes this, but Squad doesn't provide it to mod developers (nor do I know if they can, I believe most is generated by unity, either way the have direct acces so they don't need it, mod developers don't have that. ), for things like grabbing a ladder I need to know if there is a ladder, and know how the animation is run.

The KFSMEvent system.. well it's just ass, and I don't get it. Sometimes an "event" you need is in there, sometime it don't. (causing more bugs). With now way of knowing if the "event" you need is in there, except the last one, I need to add a try/catch so it doesn't thow an exception, if it does, it will just in effect disable the entire mod (and cause problems in other mods), I sad "event", because it's not the kind most programmers talk about. Squad doesn't use events, at least public ones, but they should. It guessing it will make many mod developers happy.

There is no code avaible to the developer to know what objects is close (please tell me if there is. ). I know it excist, because they use it for ... well, for knowing when to grab the ladder. However, again they don't create a method for it, most likely they do it like this:


void handleEventKeys(object sender, SomeEventArgs){
if ( key == config.ladderKey )
{
*code for finding the object and grabbing it.
}
}

and I guess that is fine, unless you are a mod developer and need the same behavior. "solutions" can be creating your own method for doing this, more bugs will slip in here.

They world matrix in the game is not a usual kind of game x,y,z world (I'm not talkin about left or right coordinate system either), it clever and twisted: basicly you don't move the character, you move the universe. It kinda happend when Kerbal became a 3d game (yes, it was a 2d game ones ) and not many games allow you to go to another freaking planet.. so they needed a way of moving around this world, and if you ever tried it yourself you will find that if you character is a HUGE distance from the world center ( position 0,0,0 ) you will see objects pop/in, chitter, al kinds of weirdness because of rounding errors and the fact compiler programmers are insane... well welcome to rounding errors. Don't believe me, try this:

insaneprogrammers.png

However, some smart cookie at Squad fixed this by moving the universe, every (to me unknown) distance the world "resets", moving the THAN current location of the vessel, to the worldposition (0,0,0). It introduced the kraken and other things, but also allowed us to explore without to much weirdness!

However, I need to know where this magic relative point is, if keeps moving around, and I can't catch it, producing a lot of bugs (in my code.) To save the position walking pattern, I need to know where it is. An AI to pathway yourself around an area is difficult enough in newtonian physics, but right now for me it sure feels like a einstein physics and Schrödinger's cat paradox. It nice thought, and the planet renderer complexity shows they are not stupid. (I'm talking about pictures of an old blog of Harverster, talking about version before 0.7, can't seem to find it.)

The is also problem of unknown calculations or constants, for example I need some of that to force the kerbal to follow you, like the walking speed on the current planet. You expect it is like something as;


double geeForce = FlightGlobals.currentMainBody.GeeASL;
...
speed *= eva.runSpeed;

speed *= geeForce;
eva.Animate(AnimationState.Run);

It works, it's just not the same as internaly used. That is reflecting in the fact they walk faster than you on the Mun and slower on Gilly ), Also the fact you see an animation command, is telling you, the animations are not automatic (except some like falling) and shows you most likey just just put animation code like that between (e.keycode = whateverkey). Logical, I always done it like that, but just in this case I need just that piece to make sure they aren't "off"

Some code is just weird, In my case the configuration saving goes before the loading of the configuration!!, so it will just override your configuration with a nice clean configuration file with no data at all, because it wasn't loaded yet. I never know why this happend, arround this point I got to much frustrated to enjoy it.

I wanted to inject it into the kerbal config (in persistance) because it will insure it get saved with the associated kerbal and if people decide they don't care about KerbalFollower and delete it, the next time the data will not be read, and thus on saving will not be there anymore. Because of that, I used another way of saving plugin data, it uses a weird squad written I/O part to save the file (more on that later).

I hoped by using github, I could get at least one developer to work with me to expained on it, because of another major flaw: myself. I'm not perfect and to be honest, don't care to be perfect in kerbal modding because I've a life outside it, and I can't justify investing more time into something I enjoy less and less working around bugs instead of working on features.

If you read this far, I might sound negative towards Squad, and in some ways I am, but most of them I don't, I will blame unity for a lot.. I keep on hoping they will improve the engine.. alot! We on the forums are hopefully enjoying the game, but it's developed by a weird creature. This might just be plane wrong of saying of me, but Squad didn't start with gaming, but advertising. At first the game didn't had any modding capabilities, at all, until they where forced because the game got hacked to support it.. They got the point and used it clever, adding some mods capabilities from that point and advertised that way.. but the codebase doesn't reflect that in most parts.

For example, they where afraid (and good call in my opinion) that people abuse modding to spread virusses or expose your naketh pictures to the world... Or something like that, Not wanting to cause that, they wrote there own I/O handler so at least people can't write outside of the kerbal directory, and made a rule that all mods must have full open source ( sadly, most people think it reflects the dynamic library, it doesn't, it can still contain virusses and exposing your personal information ).

They tried, but you can still do stuff most game developers that allow for modding will never allow you to do, like extract model data from the game..

kerbalExtracted.png

kerbalExtracted2.png

Note: This is in fact not allowed from Squad, and they could kick my ass for it. No don't ask me for content, unless your Squad, than I will fork over the code so you can block it.

tldr: In short, i'm a little burned modding the game, all the weirdness to the game and the average iq on the forum does however keep me enjoying playing the game. In the mean time people can complain about my buggy .... on github.

Edited by MSD

Share this post


Link to post
Share on other sites

Middle mouse button. Coudnt use right mouse because of camera. If not avaible like on a laptop. you can press o and drag to select and p to dispatch the kerbals on there way. I cant remember if its in the config files, the fact i used o and p is because most buttons have actions to them,

Edited by MSD

Share this post


Link to post
Share on other sites

could be configurable buttons for the actions in the next version? (the middle button feels unnatural)

and a suggestion (I totally don¡t know if only if its possible) You could override the keyboard while the kerbals are selected, (or some of them) to avoid conflicts.

Share this post


Link to post
Share on other sites
could be configurable buttons for the actions in the next version?.

Yes, I just did that, config is in /GameData/MSD/Plugin/PluginData/Config.cfg

Share this post


Link to post
Share on other sites
However, some smart cookie at Squad fixed this by moving the universe, every (to me unknown) distance the world "resets", moving the THAN current location of the vessel, to the worldposition (0,0,0). It introduced the kraken and other things, but also allowed us to explore without to much weirdness!

However, I need to know where this magic relative point is, if keeps moving around, and I can't catch it, producing a lot of bugs (in my code.) To save the position walking pattern, I need to know where it is. An AI to pathway yourself around an area is difficult enough in newtonian physics, but right now for me it sure feels like a einstein physics and Schrödinger's cat paradox. It nice thought, and the planet renderer complexity shows they are not stupid. (I'm talking about pictures of an old blog of Harverster, talking about version before 0.7, can't seem to find it.)

Try creating GameObjects in the scene to store positions instead of just storing the positions. That way Krakensbane will automatically move the points for you.

Share this post


Link to post
Share on other sites

So if you make waypoints in space, and activate your eva rcs before start patroling they actually whizzes about ;) Its great to seee this plugin is getting love and work! So nice setting up points on planets and watch your kebal come to life

Share this post


Link to post
Share on other sites

I can't seem to get the group select to work, the keys (L-mouse and p) work to select a single kerbal and I get the light grey box with click-drag or p-drag but none are selected. Any idea what could be going on?

Share this post


Link to post
Share on other sites

How do you disable the patrol lines?

EDIT: jk found the config file.

Edited by SpriteCoke

Share this post


Link to post
Share on other sites

Just tested the mod in 0.90 around the KSC, and so far it still seems to work as advertised! Can take off helmets (no more Texture Replacer!), set waypoints, wait, patrol, order Kerbals around, send them far away, follow, stay put... persistence seems to still work too. I sent a small rocket away from the physics range of a group of patrolling Kerbals, and when I focused on them again the "Loading Kerbals" notification popped up and they started their patrols again.

Thanks a ton for reviving this mod!!

Share this post


Link to post
Share on other sites

It works in .90 indeed though it's a bit bugged... I'm not aware if this happened before .90 (because I didn't use EVA Follower before), but when you crash or your pod is destroyed, the kerbals stay alive (their portraits on the lower right corner of the screen). You can even go into IVA or EVA (and they will appear out of thin air around the pod's last position)

Share this post


Link to post
Share on other sites

I hope this gets extended into rovers and small kerbal exploration crafts

Also, I am using the TAC life support mod, if I make them patrol and then leave them, I'm guessing they will die in 6hrs/1day(standard EVA package)

If that's the case, I hope a feature would be added that will make them automatically get more life support supplies from the nearest ship

Edited by lyndonguitar

Share this post


Link to post
Share on other sites
Yeah, it does. I hope it gets officially updated though.

Well, it sort of works. The mod works perfectly well, but if you destroy a pod that has kerbals inside, their icon in the bottom right doesn't disappear and if you EVA them, they spawn in the last place the pod was. So... if you like zombie kerbals, this is the mod for you!

Share this post


Link to post
Share on other sites
This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.