Implementation Rails

Discussion in 'Modules' started by Adeon, May 16, 2014.

  1. Michael

    Michael New Member

    You can now push carts :D.

    • Like Like x 2
    • Winner Winner x 1
  2. Skaldarnar

    Skaldarnar Badges badges badges badges mushroom mushroom! Staff Member

    I just saw the tweet this morning - nice work! Now make all the stuff moving! :)
    • Agree Agree x 1
  3. Michael

    Michael New Member

    tada, implemented an impulse constraint solver :D.

    here are my resources if you want to look at it to:
    http://myselph.de/gamePhysics/equalityConstraints.html
    http://www.dyn4j.org/2010/09/distance-constraint/
    http://allenchou.net/2013/12/game-physics-constraints-sequential-impulse/
    https://github.com/wnbittle/dyn4j/b...yn4j/dynamics/contact/SequentialImpulses.java
    http://www.cs.ucsb.edu/~cse/Files/Stabilization071993.pdf



    In terms of what I plan going forward with this. I'm going to remove large rails and reduce it down to just carts. I'm just going to work on refining and improving carts. So at the moment I'm looking into implementing some form of constraint model. It's fairly basic at the moment but it shows a proof of concept. The mod still is fairly buggy with my changes so those problems need to be addressed before I release this.

    Bugs
    • If a cart is moving too fast it can skip a rail segment and cause an out of bounds exception
    • It's possible for a cart to set the location to NAN
    • rail placement is annoying
    • switches don't work at all with the wrench
    • Like Like x 3
    Last edited: Mar 30, 2017
  4. Michael

    Michael New Member

    • Like Like x 2
    Last edited: Mar 31, 2017
  5. Michael

    Michael New Member

    just been bugfixing the module. I think this is starting to look pretty good.
    • Winner Winner x 3
    • Like Like x 2
  6. Adeon

    Adeon terasology.ru Staff Member

    @Michael Hello! It's awesome dude! Do you have any plans for this module? Let's create tasks for the rails module! =) what do you think about it?
    • Like Like x 1
  7. Michael

    Michael New Member

    At the moment I want to get the module to have feature parity with the old one. I think it would be a good idea to create a feature list. I've been debating what feature to work into this module and what would be better fit into a different module. Some of the more base things such as cart joining would need to be re-implemented along with all the bugs that still exist with the constraint solver I wrote. The cart motion is a still pretty unstable but that is going to have to be a work in progress.
  8. Adeon

    Adeon terasology.ru Staff Member

    Can you create tasks with the description of each bugs? =)
  9. Michael

    Michael New Member

    sure, after finals.
  10. Cervator

    Cervator Project Lead and Community Wizard Staff Member

    Hey @Adeon ! Great to see you again. Hope all is well :)

    @Nihal Singh has integration with Rails as a bonus item for one of our GSOC projects. @Michael and @SkySom have been tweaking at it occasionally. Maybe by summer's end we could have a really cool system working!

    GitHub has introduced "projects" which allow for a new way to note down ideas before they become full issues. Might be an idea to start one for Rails + related (since it may end up involving multiple modules). Here's Nihal's for example: https://github.com/orgs/Terasology/projects/1
    • Like Like x 1
  11. Adeon

    Adeon terasology.ru Staff Member

    Maybe I can help you to finish current work?

    Thanks =)

    I will check it out =)
  12. Michael

    Michael New Member

    Have you had a chance to try out the changes I made to master? You can start from there and I can probably start working on a features list later today. As a base mod what do you think should be added in terms of carts. I don't want to add too much and would rather like to focus on helping people extend onto carts for different mods. @Adeon have you joined the slack channel?

    https://github.com/orgs/Terasology/projects/6
    Last edited: May 17, 2017
  13. Adeon

    Adeon terasology.ru Staff Member

    @Michael Can you tell me name of the channel?
    About base mo: I planned to add customization for the minecarts. For example: you can make minecart with wood bucket and you can replace it on iron bucket in future. Or you can create booster with the coal engine and replace it on gas engine :)
  14. Michael

    Michael New Member

  15. Cervator

    Cervator Project Lead and Community Wizard Staff Member

    Invite sent :) Or re-sent, really, ancient pending one :D

    @Adeon let me know if you don't see the resent invite, sent to your gmail
  16. Michael

    Michael New Member

    I've been trying to force myself to try work on this some more. So I've implemented a portion of the solver to handle the player and cart interactions. The old implementation seemed to be heavily dependent on frame rate. Generally a higher framerate would allow the player to push the cart faster because the contact events we're triggered more. The click bug seems to be back again; so I'll probably try to hunt that down again. There is still that annoying bug where the rail will appear one way but the track segment is different. I have no way of reproducing this consistently, so I really have no idea how it occurs.


    • Like Like x 2
    Last edited: Jul 17, 2017
  17. SuperSnark

    SuperSnark Lore Master Staff Member

    Very nice! Is it possible to climb inside one or put stuff in them?
  18. SuperSnark

    SuperSnark Lore Master Staff Member

  19. Michael

    Michael New Member

    I have that segment bezier module that could be used to make larger tracks. At the moment I'm just focusing on this single block module. you should be able to climb in these with the E button. I've been slightly reworking how the solver works and I've been pretty happy with the results thus far. I also recently added network support for this module. The old module had some code for larger tracks, but I've rescoped this down and focused on the single block carts.

    • Like Like x 2

Share This Page