RealFluids

Discussion in 'WIP and Development Status' started by mindless728, Feb 22, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    well it will use the Spout plugin but not the client mod (until there is a way for me to stop the client from changing the water heights automatically)
  2. Offline

    SwearWord

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    This seems excellent but at all it has done for me is stop water flow. Any ideas?
  3. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    did you add "0 false" to the water overwrite list at the very least, if not the water will not flow at all (as it cannot replace the air blocks which are id 0), probably do the same for lava as well
  4. Offline

    Dominic

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I was just curious mindless, has the new 1060 build of Bukkit added a lot for dev's to work with? A couple of plugins that required spout no longer do because of 1060 and I was just curious if it affected your plugin at all? Hopefully made things a bit easier?

    This post has been edited 1 time. It was last edited by Dominic Aug 17, 2011.
  5. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    not really, i actually have tried Spout and either i am using it wrong (more than likely) or the AsynSetType functions for SpoutBlocks is not working atm, not to mention was slower than my implementation before

    though i found i can completely recode the new baseline in about 3-4hrs from scratch, and will be doing this tonight and putting in the old implementation again then seeing if i can reduce lock dependencies
  6. Offline

    Maeyanie

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I would prefer to never require the Spout client, as it's completely incompatible with other (generally much better) client mods. :) Even the server half can mess stuff up, though it's not as bad.

    This post has been edited 1 time. It was last edited by Maeyanie Aug 17, 2011.
  7. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    if i was going to use one, it would be the spout client, the way all of the client mod programmers have handled things has been terrible and would rather have a more flexible system. I don't mean to offend but i think they have all done a terrible job with making a system that can run multiple mods with minimal conflicts and have them work in SMP (which many do not, especially one that make new block types)

    And i know the server half can mess things up as i tried using it for one small feature (like i said does NOT require the spout client, just the server plugin), the feature would have let me change the block type in an asynchronized thread, now i have to do that manually because i used the API completely wrong (i didn't see any way to grab a Spout block) or they still have issues with this async change

    though on updates, i have been running into a synchronization issues with flow events (internally to one class) and updates to block id's in checking adjacent blocks, though i am working to fix this issue asap as when i do the API should be very close to done then i can work on 6 fluid types (classic, inifiniminer, real of each type water and lava)

    as it stands each fluid will have its own thread and a fluid would only have to implement 2 functions getMaterial() which would designate what material it would use as the flow id and flow(FluidBlock) which is how an individual block flows, that is it, though likely most fluid types will need helper functions to flow and maintain data correctly

    i also plan on making a RealFluid API that has getMaterial() as an abstract method that any real fluid would impelement and that is it, want RealObsidian flows, then just return Material.OBSIDIAN, i am thinking about doing this with each type as to make it less work for me

    of course ideas from the users or programmers looking to utilize a central flow api can give suggestions
  8. Offline

    Maeyanie

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    While this is mostly true (there's some movement to reduce conflicts with the MinecraftForge project), it's just a matter of inertia. Given the choice between dozens of great mods (even if you can't use them all at once, at least you have selection) or a single one, not many people will choose the one.

    Though, I have been seeing some better stuff coming out for Spout lately, so it might just be a matter of time until that situation reverses... of course, the actual modding API might come out by then too, which will probably kill off both solutions pretty quickly.
  9. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    well given that Spout is meant to work with bukkit seamlessly (as it is also a plugin), i think it will still be used even after the modding api comes out, though yeah, they are working hard on the clients side of things to allow mods to be made easier for the client (using spout), so i won't think it will be too long until the mods become better for it
  10. Offline

    tgp1994

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I've been experiencing issues where the water would simply become frozen; is it possible that I have somehow installed this incorrectly? I never touched the config file for it, and the map was just generated after I installed the plugin.
  11. Offline

    Musaddict

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    copy and paste this into your config:
    @mindless728 you really should default the config so that air is automatically replaced.
    tgp1994 likes this.
  12. Offline

    tgp1994

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    That is really strange... so a functional config file isn't included by default? Wow...

    Thank you, Musaddict. mindless; I hope the best for your mod! :)
  13. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    yeah, i have been thinking of that, the other option is not to put air in the config at all because if it is supposed to drop an item it crashes the server (or at least used to)
    tgp1994 likes this.
  14. Offline

    tgp1994

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @mindless728: I guess I'm confused about how the liquid is quantified in your mod. In the following screenshot, I have a small pool of water;

    2011-08-20_10.49.52.png


    next to an empty pit:

    (The image won't load... The pit is on the right of the above image.)

    However, when I unblock the wall between the larger pit and the smaller pool of the water, the water flows into the bottom first level of the pit, then a second flow comes in and kind of moves back and forth a block.

    2011-08-20_10.51.40.png

    Out of all of the water that flowed into that pit, it looks as if none of it was displaced from the original pool.

    Is this just kind of something that we can't expect to see yet? It would be really cool if the water level could change on a per square basis. :)

    This post has been edited 1 time. It was last edited by tgp1994 Aug 20, 2011.
  15. Offline

    smickles

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    As I understand it: (in the second image) The water levels of the upper pool are lower, you just can't see it. Changing it to show the lower levels of those blocks of water would require a client side mod.
    tgp1994 likes this.
  16. Offline

    tgp1994

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Ahh, ok. And since this is made for bukkit, that will be near to impossible, right?
  17. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    yeah, i am waiting on Spout to have some more features so i can lock the fluid height, though there are other ways (like sending chunk information every server tick) that i could try

    UPDATE: I got a lot of the bugs worked out last night and am going through a code review of myself to see if i need to add features, then a few days of testing and lastly going through commenting and creating java docs, then the FluidFlow plugin can be released. After all of that i can begin work on the RealFluid api that will work in tandem with FluidFlow then create a water and lava version (if the api is setup well this should be minimal) then some test builds to see what people think. After test builds will be adding configuration file support, commands, and permissions (more than likely using bukkit's permission system)
  18. Offline

    BioRage

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I'll look into this.
  19. Offline

    Dominic

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Aaaaahhhh! It's...so...cloosseeeee
  20. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    no FluidFlow is close (ie in submissions as v1.0), i still have to write the RealFluids (a lot) base code then the RealWater and RealLava code (which should be a couple of lines, not much after the base is done)

    though on a positive note i am going to make the flowing more realistic with a local minima path finder for real fluids so they don't just expand outwards, another positive with the FluidFlow and Fluid classes controlling everything from management to threading, i should get some performance gains.

    lastly with the water and lava versions separated I should be able to make different flow lengths (ie lava can flow slower than water), which has been a major grip about this currently

    if you want to check out the classic version of this head to the FluidFlow thread where i will be posting the individual types of fluid (Classic, Infiniminer, Real), though the Real versions will also have there own page as well for support (unlike Infiniminer and Classic)
    tgp1994 likes this.
  21. Offline

    tgp1994

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Awesome! Will you make a reply so we get notified once you release the update?

    I've been rather discouraged to use bukkitcraft now since it seems you either use that or you modify the server's jar, but I would still like to test this.
  22. Offline

    sfxworks

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  23. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    have had this suggested before, not interested in porting finite fluid over, would rather have it server side only as to NOT require client side mods
    smickles likes this.
  24. Offline

    sfxworks

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    If you can do this, then that would be amazing.
  25. Offline

    henrik645

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hello! I am new to this forum. I might have done something wrong, but it seems that it does not work for 1.8.1 server. Sorry if this question has already been posted, but I'm so bad at English, so I can not read the whole thread. Is it that it simply does not work with 1.8.1 server, or as I say that I have misunderstood something?:) Grateful for answers.
  26. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    It might not, this is code that I am no longer maintaining and IMO should be used in a live server anyways (very buggy)
    The follow to this should have been FluidFlow (which allows different kinds of flows), however development of that stopped due to me developing private plugins for a server
  27. Offline

    henrik645

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So it no longer works with the newer versions? If so very sorry. Thought to have a littledrains and stuff on the server. But what is IMO? Could you maybe able to imagine that someone elsecontinues at the code? But I can not mod, so I can If so, do not send any code to. And I am sorry if I have misunderstood again.:)

    This post has been edited 1 time. It was last edited by henrik645 Oct 17, 2011.
  28. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I have no idea if it does work with the newer versions of bukkit as i haven't had time to test it

    IMO - in my opinion

    I have no idea if someone wants to continue the code no one has asked
  29. Offline

    smickles

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    It still works for me ;) If it stops working, i'd probably do something to get fluidflow or this working the way my server peeps want.
  30. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    well to get it working on FluidFlow would mean a complete rewrite IMO and with the newest RB FluidFlow is now broken since the Bukkit team changed how the configuration files work so that aspect needs reworked as well

    I don't see RealFluids breaking unless they mess with some of the internal events as it uses its own configuration file loading/saving
Thread Status:
Not open for further replies.

Share This Page