XS Venture ascent autopilot 3

Sorry for lack of updates, I’m currently having exams, so they will come with delays. Anyway, I worked more on the autopilot, altered constants a bit, so it’s now much smoother.

I also recorded a video. I’m sorry for the quality, but there is a problem with simulation – it has to run fast enough, else autopilot will not be able to compensate for increasing error. If spacecraft is traveling at 5000 meters per second (less than orbital), then FPS of 100 results in spacecraft skipping 50 meters every frame, while FPS drop to 20 will make it skip 250 meters per frame – that’s more than enough to create major error.

I had to record video quickly, so I just used my old videocamera, and TV tuner to record the video:

5 Responses to “XS Venture ascent autopilot 3”


  • Hi,

    since I couldn’t find your eMail address (or any other kind of contact possiblity, a contact form or something on your website would be nice ^^) i comment on this post.

    I wanted to let you know that I forked your opengta2 source and made it public available under http://github.com/u9oqcd4p/OpenGTA2

    Especially the first commits could be interessting for you as they fix the compilation under linux (like forgotten includes or wrong parameters). It would be great if you could look at your gmp2map tool again I’m not that into it but all the fread calls fail.

    They report they could only read one byte but you want them to read four bytes. Moreover the all2map.bat script calls gmp2map with only 4 parameters but 5 are required.

    It would be great to receive feedback on this :-)

    u9oqcd4p

  • My email is phoenix@uol.ua. It’s fine though, I check both blog comments and my mail.

    The tools it uses are really crappy and I put them together in a hurry, they need a complete rewrite later. Someone said he would, but never finished that.

    Yeah, I’m sorry, I don’t have linux installation right now, so I couldn’t check if it still compiles or not (again, there was someone who ensured it compiled on linux but he ran away).

    Breakpoint in GCC is also “_asm {int 3}” by the way. And I dunno about the constant keyword, it’s kinda not so convenient, and doesn’t provide much more security than there already is; this should be discussed though, I guess?

    Are you planning to continue it as separate thing, or merge it back later?

  • Hi,

    it would be very cool if you merge the changes back into your repository, I just forked because I wanted to play around with the code and prefer git to svn.

    Do you have an idea how to verify gmp2map results? I don’t trust them since fread calls fail, but I didn’t yet have the time to look closer into it.

    u9oqcd4p

  • Hi,

    sorry somehow I forgot to read your last paragraph ^^

    According to [1] the keyword for inline assembler in GCC is asm(“…”) or __asm__(“…”), so i tried asm(“int 3″) but for some reason it didn’t compile. I’ll check this.

    I use const where possible because it prevents you shoot yourself into the foot (like if you make a method const you can’t change the internal state of your object by accident).

    u9oqcd4p

    [1] http://ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html#s4

  • Well I never shoot the foot myself like that, in OpenGTA2 developement you’re supposed to take care of all resources you use, and always know where and why they are there. (Plus I like having real pointers I can do whatever I want with, not something restricted by const, but that’s just my destructive preference)

    I know it’s kind of annoying, but it decreases amount of tiny memory bugs around, even without const stuff. Although if you’re doing something wrong somewhere, it’s gonna come up pretty quickly as seemingly major bug.

    Anyway, would be nice if you provided patch file later, once you gather enough fixes and changes, I could use that to merge it.

    There is no real way to verify results other than load map in OpenGTA2 I guess… Better to just rewrite the whole thing

Leave a Reply